문제 01) 키보드에서 하나의 문자를 읽어서 모음과 자음을 구분하는 프로그램을 작성하여 보자. 단 switch 문을 사용한다.
(하나의 문자를 읽을 때는 getchar() 함수를 호출한다. 자음이 많으므로 detault 문을 이용하자.)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
#include<stdio.h>
int main() {
char a;
printf("문자를 입력하시오: ");
a = getchar();
switch(a) {
case 'a':
printf("모음입니다.");
break;
case 'e':
printf("모음입니다.");
break;
case 'i':
printf("모음입니다.");
break;
case 'o':
printf("모음입니다.");
break;
case 'u':
printf("모음입니다.");
break;
default :
printf("자음입니다.");
}
return 0;
}
|
cs |
문제 02) 사용자로부터 2개의 정수를 받아서 첫 번째 정수가 두 번째 정수로 나누어 떨어지는 지를 검사하는 프로그램을 작성하라. 즉 약수인지를 검사한다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
#include<stdio.h>
int main() {
int a, b;
printf("정수를 입력하시오: ");
scanf("%d", &a);
printf("정수를 입력하시오: ");
scanf("%d", &b);
if (a % b == 0)
printf("약수입니다.");
return 0;
}
|
cs |
문제 03) 사용자로부터 3개의 정수를 읽어 들인 후에 if-else 문을 사용하여 가장 작은 값을 결정하는 프로그램을 작성하라.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
#include<stdio.h>
int main() {
int a, b, c;
printf("3개의 정수를 입력하시오: ");
scanf("%d %d %d", &a, &b, &c);
if (a > b) {
if(b > c)
printf("제일 작은 정수는 %d입니다.", c);
else
printf("제일 작은 정수는 %d입니다.", b);
}
else {
if(a > c)
printf("제일 작은 정수는 %d입니다.", c);
else
printf("제일 작은 정수는 %d입니다.", a);
}
return 0;
}
|
cs |
문제 04) 컴퓨터와 가위, 바위, 보 게임을 하는 프로그램을 작성하라. 컴퓨터는 사용자에게 알리지 않고 가위, 바위, 보 중에서 임의로 하나를 선택한다. 사용자는 프로그램의 입력 안내 메시지에 따라서, 3개 중에서 하나를 선택하게 된다. 사용자의 선택이 끝나면 컴퓨터는 누가가 무엇을 선택하였고 누가 이겼는지, 비겼는지를 알려준다.
(사용자의 선택과 컴퓨터의 선택을 연속적인 if-else로 비교한다. (rand()%3+1)으로 1부터 3사이의 난수를 발생하여서 컴퓨터의 선택으로 한다.)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
int main() {
int n, com_n;
printf("선택하시오(1: 가위 2: 바위 3: 보) ");
scanf("%d", &n);
srand((unsigned)time(NULL));
com_n = rand() % 3 + 1;
if (com_n == 1) {
if (n == 1)
printf("사용자가 비겼음");
else if (n == 2)
printf("사용자가 이겼음");
else if (n == 3)
printf("사용자가 졌음");
}
if (com_n == 2) {
if(n==1)
printf("사용자가 졌음");
else if (n == 2)
printf("사용자가 비겼음");
else if (n == 3)
printf("사용자가 이겼음");
}
if (com_n == 3) {
if (n == 1)
printf("사용자가 이겼음");
else if (n == 2)
printf("사용자가 졌음");
else if (n == 3)
printf("사용자가 비겼음");
}
return 0;
}
|
cs |
문제 05) 놀이 공원에서 롤러코스터에 타려면 키가 140cm 이상이고 나이가 10살 이상이어야 한다고 가정하자. 사용자에게 키와 나이를 질문한 후에 "타도 좋습니다" 또는 "죄송합니다"를 출력하는 프로그램을 작성하여 보자.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
#include<stdio.h>
int main() {
int height, age;
printf("키를 입력하시오(cm): ");
scanf("%d", &height);
printf("나이를 입력하시오: ");
scanf("%d", &age);
if (height >= 140 && age >= 10)
printf("타도 좋습니다.");
else printf("죄송합니다.");
return 0;
}
|
cs |
문제 06) 사용자로부터 몇 월인지를 정수로 입력받아서 Jan와 같은 영어단어로 출력하는 프로그램을 작성하라.
(switch 문을 사용하여 월번호에 따라, 적절한 영어 단어를 출력한다. break; 문을 빠뜨리지 않도록 조심한다.)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
#include<stdio.h>
int main() {
int month;
printf("월번호를 입력하시오: ");
scanf("%d", &month);
switch(month) {
case 1:
printf("Jan"); break;
case 2:
printf("Feb"); break;
case 3:
printf("Mar"); break;
case 4:
printf("Apr"); break;
case 5:
printf("May"); break;
case 6:
printf("Jun"); break;
case 7:
printf("Jul"); break;
case 8:
printf("Aug"); break;
case 9:
printf("Sep"); break;
case 10:
printf("Oct"); break;
case 11:
printf("Nov"); break;
case 12:
printf("Dec"); break;
}
return 0;
}
|
cs |
문제 07) 사용자로부터 키를 입력받아서 표준 체중을 계산한 후에 사용자의 체중과 비교하여 저체중인지, 표준인지, 과체중인지를 판단하는 프로그램을 작성하라. 표준 체중 계산식은 다음을 사용하라.
표준 체중 = (키 - 100) * 0.9
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
#include<stdio.h>
int main() {
int height, weight;
double sum;
printf("체중과 키를 입력하세요:");
scanf("%d %d", &weight, &height);
sum = (height - 100) * 0.9;
if (sum > weight)
printf("저체중입니다.");
else if(sum < weight)
printf("과체중입니다.");
else
printf("표준입니다.");
return 0;
}
|
cs |
문제 08) 놀이 공원의 자유이용권의 가격을 계산하는 프로그램을 작성하여 보자. 입장료는 다음과 같은 조건으로 결정된다. 현재 시간과 사용자의 나이를 입력받아서 지불하여야 하는 요금을 화면에 출력한다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
#include<stdio.h>
int main() {
int time, age;
printf("현재 시간과 나이를 입력하시오(시간, 나이): ");
scanf("%d %d", &time, &age);
if (time <= 17) {
if (3 <= age && age <= 12 || age >= 65)
printf("요금은 25000입니다.");
else printf("요금은 34000입니다.");
}
else printf("요금은 10000입니다.");
return 0;
}
|
cs |
문제 09) 다음과 같이 정의되는 함수의 함수값을 계산하여 보자. 사용자로부터 x값을 입력잗아서 함수값을 계산하여 화면에 출력한다. x는 실수이다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
#include<stdio.h>
int main() {
double x;
printf("x의 값을 입력하시오:");
scanf("%lf", &x);
if (x <= 0)
printf("f(x)의 값은 %lf", x * x - 9 * x + 2);
else if(x > 0)
printf("f(x)의 값은 %lf", 7 * x + 2);
return 0;
}
|
cs |
문제 10) (x, y) 좌표를 입력받아서 좌표가 속하는 사분면을 화면에 출력하는 프로그램을 작성하라.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
#include<stdio.h>
int main() {
int x, y;
printf("좌표(x, y): ");
scanf("%d %d", &x, &y);
if (x > 0 && y > 0)
printf("1사분면");
else if (x < 0 && y > 0)
printf("2사분면");
else if (x < 0 && y <0)
printf("3사분면");
else if (x > 0 && y < 0)
printf("4사분면");
return 0;
}
|
cs |
문제 11) 사용자로부터 하나의 문자를 입력받아서 문자가 'R' 이나 'r' 이면 "Rectangle" 이라고 출력한다. 'T' 이거나 't' 이면 "Triangle", 'C' 이거나 'c'이면 "Circle" 이라고 출력하는 프로그램을 작성한다. 그외의 문자가 들어오면 "Unknown" 이라고 출력한다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
#include<stdio.h>
int main() {
char ch;
printf("문자를 입력하시오: ");
ch = getchar();
switch (ch) {
case'R':
case'r':
printf("Rectangle");
break;
case 'T':
case't':
printf("Triangle");
break;
case 'C':
case'c':
printf("Circle");
break;
default:
printf("Unknown");
}
return 0;
}
|
cs |
:)
'C > 쉽게 풀어쓴 C언어 Express' 카테고리의 다른 글
[쉽게 풀어쓴 C언어 Express] 8장 programming (0) | 2022.08.08 |
---|---|
[쉽게 풀어쓴 C언어 Express] 7장 programming (0) | 2022.08.06 |
[쉽게 풀어쓴 C언어 Express] 5장 programming (0) | 2022.08.04 |
[쉽게 풀어쓴 C언어 Express] 4장 programming (0) | 2022.07.29 |
[쉽게 풀어쓴 C언어 Express] 3장 programming (0) | 2022.07.28 |
댓글