쉽게 풀어쓴 C언어 EXPRESS 개정 3판
p.258 CHAPTER 6 조건문
1. 키보드에서 하나의 문자를 읽어서 모음과 자음을 구분하는 프로그램을 작성하여 보자. 단 switch 문을 사용한다.
코드
#include<stdio.h>
int main(void)
{
char c;
printf("문자를 입력하시오: ");
scanf("%c", &c);
switch (c) {
case 'a':
case 'e':
case 'i':
case 'o':
case 'u':
printf("모음입니다.\n");
break;
default:
printf("자음입니다.\n");
break;
}
return 0;
}
결과
2. 사용자로부터 2개의 정수를 받아서 첫 번째 정수가 두 번째 정수로 나누어 떨어지는 지를 검사하는 프로그램을 작성하라. 즉 약수인지를 검사한다.
코드
#include<stdio.h>
int main(void)
{
int a, b;
printf("정수를 입력하시오: ");
scanf("%d", &a);
printf("정수를 입력하시오: ");
scanf("%d", &b);
if (a % b == 0)
printf("약수입니다.\n");
else
printf("약수가 아닙니다.\n");
return 0;
}
결과
3. 사용자로부터 3개의 정수를 읽어 들인 후에 if-else 문을 사용하여 가장 작은 값을 결정하는 프로그램을 작성하라.
코드
#include<stdio.h>
int main(void)
{
int x, y, z;
printf("3개의 정수를 입력하시오: ");
scanf("%d %d %d", &x, &y, &z);
printf("제일 작은 정수는 ");
if (x < y) {
if (x < z)
printf("%d", x);
else
printf("%d", z);
}
else {
if (y < z)
printf("%d", y);
else
printf("%d", z);
}
printf("입니다\n");
return 0;
}
결과
4. 컴퓨터와 가위, 바위, 보 게임을 하는 프로그램을 작성하라. 컴퓨터는 사용자에게 알리지 않고 가위, 바위, 보 중에서 임의로 하나를 선택한다. 사용자는 프로그램의 입력 안내 메세지에 따라서, 3개중에서 하나를 선택하게 된다. 사용자의 선택이 끝나면 컴퓨터는 누가 무엇을 선택하였고 누가 이겼는지, 비겼는지를 알려준다.
코드
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
int main(void)
{
int u, c;
srand((int)time(NULL));
printf("선택하시오(1: 가위 2: 바위 3: 보): ");
scanf("%d", &u);
c = rand() % 3 + 1;
if (u == 1) {
if (c == 1)
printf("비겼음\n");
else if (c == 2)
printf("컴퓨터 2: 컴퓨터가 이겼음\n");
else
printf("컴퓨터 3: 사용자가 이겼음\n");
}
else if (u == 2) {
if (c == 1)
printf("컴퓨터 1: 사용자가 이겼음\n");
else if (c == 2)
printf("비겼음\n");
else
printf("컴퓨터 3: 컴퓨터가 이겼음\n");
}
else if (u == 3) {
if (c == 1)
printf("컴퓨터 1: 컴퓨터가 이겼음\n");
else if (c == 2)
printf("컴퓨터 2: 사용자가 이겼음\n");
else
printf("비겼음\n");
}
return 0;
}
결과
5. 놀이공원에서 롤러코스터에 타려면 키가 140cm 이상이고, 나이가 10살 이상이어야 한다고 가정하자. 사용자에게 키와 나이를 질문한 후에 "타도 좋습니다" 또는 "죄송합니다" 를 출력하는 프로그램을 작성하여 보자.
코드
#include<stdio.h>
int main(void)
{
int age;
double cm;
printf("키를 입력하시오(cm): ");
scanf("%lf", &cm);
printf("나이를 입력하시오: ");
scanf("%d", &age);
if (cm >= 140 && age >= 10)
printf("타도 좋습니다.\n");
else
printf("죄송합니다.\n");
return 0;
}
결과
6. 사용자로부터 몇 월인지를 정수로 입력받아서 Jan와 같은 영어단어로 출력하는 프로그램을 작성하라.
코드
#include<stdio.h>
int main(void)
{
int month;
printf("월번호를 입력하시오: ");
scanf("%d", &month);
switch (month) {
case 1:
printf("Jan\n");
break;
case 2:
printf("Feb\n");
break;
case 3:
printf("Mar\n");
break;
case 4:
printf("Apr\n");
break;
case 5:
printf("May\n");
break;
case 6:
printf("Jun\n");
break;
case 7:
printf("Jul\n");
break;
case 8:
printf("Aug\n");
break;
case 9:
printf("Sep\n");
break;
case 10:
printf("Oct\n");
break;
case 11:
printf("Nov\n");
break;
case 12:
printf("Dec\n");
break;
}
return 0;
}
결과
7. 사용자로부터 키를 입력 받아서 표준 체중을 계산한 후에 사용자의 체중과 비교하여 저체중인지, 표준인지, 과체중인지를 판단하는 프로그램을 작성하라. 표준 체중 계산식은 다음을 사용하라.
- 표준체중 = ( 키 – 100 ) * 0.9
코드
#include<stdio.h>
int main(void)
{
float weight, height, avg;
printf("체중과 키를 입력하시오: ");
scanf("%f %f", &weight, &height);
avg = (height - 100) * 0.9;
if (avg < weight)
printf("과체중입니다.\n");
else if (avg == weight)
printf("표준입니다.\n");
else
printf("저체중입니다.\n");
return 0;
}
결과
8. 놀이 공원의 자유이용권의 가격을 계산하는 프로그램을 작성하여 보자. 입장료는 다음과 같은 조건으로 결정된다. 현재 시간과 사용자의 나이를 입력받아서 지불하여야 하는 요금을 화면에 출력한다.
코드
#include<stdio.h>
int main(void)
{
int time, age;
printf("현재 시간과 나이를 입력하시오(시간, 나이): ");
scanf("%d %d", &time, &age);
if (time < 17) {
if (age < 13 || 65 <= age)
printf("요금은 25000입니다.\n");
else
printf("요금은 34000입니다.\n");
}
else
printf("요금은 10000입니다.\n");
return 0;
}
결과
9. 다음과 같이 정의되는 함수의 함수값을 계산하여 보자. 사용자로부터 x값을 입력받아서 함수값을 계산하여 화면에 출력한다. x는 실수이다.
코드
#include<stdio.h>
int main(void)
{
float x, value;
printf("x의 값을 입력하시오: ");
scanf("%f", &x);
if (x <= 0)
value = x * x - 9 * x + 2;
else
value = 7 * x + 2;
printf("f(x)의 값은 %f\n", value);
return 0;
}
결과
10. (x, y) 좌표를 입력받아서 좌표가 속하는 사분면을 화면에 출력하는 프로그램을 작성하라.
코드
#include<stdio.h>
int main(void)
{
float x, y;
printf("좌표(x, y): ");
scanf("%f %f", &x, &y);
if (0 < x && 0 < y)
printf("1사분면\n");
else if (0 > x && 0 < y)
printf("2사분면\n");
else if (0 > x && 0 > y)
printf("3사분면\n");
else
printf("4사분면\n");
return 0;
}
결과
11. 사용자로부터 하나의 문자를 입력받아서 문자가 'R'이나 'r'이면 "Rectangle"이라고 출력한다. 'T'이거나 't'이면 "Triangle", 'C'이거나 'c'이면 "Circle"이라고 출력하는 프로그램을 작성한다. 그 외의 문자가 들어오면 "Uknown"이라고 출력한다.
코드
#include<stdio.h>
int main(void)
{
char c;
printf("문자를 입력하시오: ");
scanf("%c", &c);
if (c == 'R' || c == 'r')
printf("Rectangle\n");
else if (c == 'T' || c == 't')
printf("Triangle\n");
else if (c == 'C' || c == 'c')
printf("Circle\n");
else
printf("Unknown\n");
return 0;
}
결과
'개발 > 책' 카테고리의 다른 글
[안드로이드 프로그래밍] 6장 직접 풀어보기 6-1 (0) | 2021.10.08 |
---|---|
[안드로이드 프로그래밍] 5장 직접 풀어보기 5-5 (0) | 2021.10.06 |
[안드로이드 프로그래밍] 5장 직접 풀어보기 5-4 (0) | 2021.10.05 |