분류 전체보기
[CS] 이진법과 십진법 사이 변환하기, 컴퓨터와 이진법
숫자를 0과 1로만 나타내는 것이 이진법입니다. 진법 이해하기 십진법 숫자 1234를 봅시다. 자릿수별로 떼어서 보면, 1000 * 1 + 100 * 2 + 10 * 3 + 10 * 4이죠? 이는 곧 103 * 1 + 102 * 2 + 101 * 3 + 100 * 4와 같습니다. 자릿수간에 10배 차이가 나죠. n개의 자릿수 차이가 나면 10n배 차이가 나게 됩니다. a진법을 구성하는 방법이 이런 겁니다. 각 자릿수의 수를 c0, c1, c2, ⋯ 라 하면 a진법 수는 a0 * c0 + a1 * c1 + a2 * c2 + a3 * c3 + ⋯ + an * cn와 같이 표현됩니다. 자릿수간엔 a배 차이가 나죠. n개의 자릿수 차이가 나면 an배 차이가 나게 됩니다. 기호들이 많아서 눈에 안 들어오실 수도 ..
[C] example3. 게임 캐릭터 인포메이션 만들기
다음 코드를 완성하여 출력 예시와 같이 출력하는 프로그램을 작성해주세요. 소스 이름은 "example3. 게임 캐릭터 인포메이션 만들기.c"로 하시기 바랍니다. #include #include #define NAME_SIZE 100 int main() { char name[NAME_SIZE]; printf("캐릭터 이름을 입력해주세요. : "); gets_s(name, NAME_SIZE); char grade; int hp, mp, atk, def, speed; // -------------------------------------------------- // 여기에 들어갈 코드 작성 // // -------------------------------------------------- return 0;..
[C] example2. 점과 직선 사이의 거리 구하기
직선 ax+by+c = 0이 점 (x0, y0)를 지날 때, 점과 직선 사이의 거리는 다음과 같습니다. 헤더 파일을 포함하면, 제곱근을 구해 float 타입의 값으로 반환하는 함수인 sqrtf를 사용할 수 있습니다. sqrtf(9)는 3.000000이고, sqrtf(16)은 4.000000입니다. 인자로 식이 들어가도 상관 없으니 sqrtf(3.5*3.5)=3.50000이기도 하죠. 위 사실들을 참고하여, 직선과 점이 주어질 때, 점과 직선 사이의 거리를 구하는 프로그램을 작성해주세요. 단, 모든 입출력은 실수값을 입출력하도록 하고, 출력할 때에는 소수점 아래 두 번째 자릿수까지만 출력하도록 해주세요. 소스 이름은 "example2. 점과 직선 사이의 거리 구하기.c"로 하시기 바랍니다. [출력 예시] ..
[C] example1. 문자를 입력받아 아스키코드로 출력하기
char 타입의 문자는 아스키코드를 사용합니다. 영어 알파벳과 숫자, 몇 가지의 특수 문자를 표현 가능하죠. 또한 char 타입은 1바이트 정수 자료형으로도 취급됩니다. 위 사실들을 참고하여, 문자를 입력받아 10진수 아스키코드를 출력하는 프로그램을 작성해주세요. 소스 이름은 "example1. 문자를 입력받아 아스키코드 출력하기.c"로 하시기 바랍니다. [출력 예시] 문자를 입력하세요. : c 문자 "c"에 해당하는 아스키코드는 99입니다. (파랑색은 입력값입니다.) 더보기 #include int main() { char ch; printf("문자를 입력하세요. : "); scanf_s("%c", &ch, 1); // scanf_s("%c", &ch)도 맞습니다. printf("문자 \"%c\"에 해당..
[C] 6. printf를 좀 더 잘 써봅시다. <필드폭 및 소수점 조정, 이스케이프 문자>
지난 글에서 printf와 scanf를 다루면서 서식 문자까지 살펴보았었죠. 이번 글은 printf에 대해 조금의 보충 설명을 하는 글입니다. 중요도로 따지면 지난 글에 비해서는 떨어지니 쉬어가는 글, 가볍게 읽는 글로 생각하고 읽어주세요. printf에서, 서식 문자는 출력할 폭과 소수 자릿수를 지정할 수 있습니다. 특별한 출력을 하는 이스케이프 문자들이 있습니다. 필드폭 지정 필드폭이란, 서식 문자를 출력할 때 사용하는 공간의 폭입니다. 말해 무엇합니까. 이것은 직접 눈으로 보는 게 빠릅니다. 이번 소스의 이름은 "6. 필드폭 및 소수점 조정, 이스케이프 문자.c"입니다. #include int main() { int a, b; scanf_s("%d, %d", &a, &b); printf("%d + ..
[C] 5. 입출력은 프로그램의 근본입니다. <printf, scanf>
드디어 여태껏 쭉 써왔던 printf를 자세히 다룰 글이 나타났습니다. printf의 사용 경험이 여러분에겐 충분하기 때문에, 오늘 글은 매일 봤던 친구를 보는 것처럼 편하게 읽으실 수 있을 겁니다. 출력을 담당하는 printf, 입력을 담당하는 scanf가 이번 글의 주제입니다. scanf는 printf와 굉장히 유사합니다. stdio는 standard input output의 준말입니다. printf printf는 입출력 중 출력에 해당하는 한 함수입니다. 프로그램을 실행시켰다면 유의미한 동작 결과가 있어야겠죠. 그래서 프로그램은 출력이 필요합니다. 결과로 얻어지는 게 없다면 프로그램은 무의미합니다. printf는 문자열을 출력할 때 사용합니다. printf를 사용할 때는 함수의 이름인 printf를..