C | C++/C
[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를..
[C] 4. 변수의 최댓값을 넘기면 무슨 일이 일어날까요? <오버플로우, 언더플로우, 랩 어라운드>
다양한 자료형 글에서, 자료형들의 최댓값과 최솟값을 알아보셨습니다. 변수에 자료형의 최댓값보다 큰 수를 넣거나 자료형의 최솟값보다 작은 수를 넣으면 어떻게 될까요? 호기심이 생기지 않나요? 자료형의 표현 한계를 넘는 값을 저장하려 하면 오버플로우, 언더플로우, 랩 어라운드 중 하나가 발생합니다. 산술 오버플로우 변수를 상자에 비유하는 책이 많습니다. 상자가 물건을 담는 공간이듯이, 변수도 값을 담는 공간이죠. 어떤 값을 담는 변수인지, 상자의 종류를 나타내는 것이 자료형이고요. 그런데 최근에 저는 제 친구에게서 흥미로운 비유를 들었습니다. 변수를 상자보다 컵에 비유하더군요. 컵이 액체를 담듯이, 변수도 값을 담는 겁니다. 와인잔인지, 맥주잔인지, 소주잔인지, 종이컵인지 그 컵의 종류에 해당하는 게 자료형..