본문 바로가기
컴퓨터/코딩

(제3판)C언어 콘서트 CHAPTER 2. Programming 문제 개인풀이

by 혼란한물범 2022. 7. 27.
반응형

개정3판 2장 프로그래밍 문제

개인풀이이기 때문에 출제자가 의도한 정답과 다를 수 있다.

 

Visual Studio로 실행해보고 싶은 사람들은 아래 링크에서 해당 문제를 찾아 복사 - 붙여넣기 하자 (다운받지 않아도 된다)

https://mega.nz/file/kPlkzbjQ#rEQ2VtC0PAP8U2XHbvP8OSqyTN4WirUysyZQ33l_NPc

 

scanf를 사용할 때 전처리기 명령어 #define _CRT_SECURE_NO_WARNINGS를 올바르게 입력하지 않았거나, "%d"를 입력할 때 따옴표의 범위가 잘못되어 오류가 나는 경우가 많았다(예를 들어 "%d, &x"따위의 입력). 잘 확인해보자.

 

 

1. 다음과 같이 출력하는 프로그램을 작성해보자.

#include <stdio.h>

int main(void)
{
printf("#         #\n");
printf("#         #\n");
printf("#         #\n");
printf("######\n");
printf("#         #\n");
printf("#         #\n");
printf("#         #");

return 0;
}

 

 

2. 사용자의 이름, 주소, 전화번호를 화면에 출력하는 프로그램을 작성해보자.

#include <stdio.h>

int main(void)
{
printf("이름: 홍길동\n");
printf("주소: 서울시 종로구\n");
printf("전화번호: 111-222\n");

return 0;
}

 

3. 다음과 같이 사용자로부터 상품의 가격과 개수를 받아서 총가격을 출력하는 프로그램을 작성하라. 제품의 가격은 price라는 변수에 저장되어 있다고 가정한다.

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>

int main(void)
{
int price;
int number;
int result;

printf("상품 가격을 입력하시오: ");
scanf("%d", &price);

printf("상품의 개수를 입력하시오: ");
scanf("%d", &number);

result = price * number;

printf("총 가격은 %d입니다.\n", result);

return 0;
}

 

 

 

4. 사용자의 나이를 받아서 다음과 같이 출력한다. 나이는 변수 age에 저장한다.

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>

int main(void)
{
int age;

printf("나이를 입력하시오: ");
scanf("%d", &age);

printf("내년이면 %d살이 되시는군요.\n", age + 1);

return 0;
}

 

 

5. 사용자로부터 세 개의 정수를 입력받은 후, 평균값을 계산하여 실수로 화면에 풀력하는 프로그램을 작성하라.

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>

int main(void)
{
int x, y, z;
float average;

printf("정수를 입력하시오: ");
scanf("%d", &x);
printf("정수를 입력하시오: ");
scanf("%d", &y);
printf("정수를 입력하시오: ");
scanf("%d", &z);

average = (x + y + z) / 3;

printf("평균은 %f입니다.\n", average);

return 0;
}

 

 

6. 두 개의 각도(정수)가 주어지면 삼각형의 세 번째 각도를 찾는 C 프로그램을 작성하라.

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>

int main(void)
{
int ang1, ang2, ang3;

printf("삼각형의 내각 2개(빈칸으로 분리) :");
scanf("%d%d", &ang1, &ang2);

ang3 = 180 - (ang1 + ang2);

printf("세번째 각은 %d\n", ang3);

return 0;
}

 

반응형

댓글