반응형

앞장에서 간단한 정수 계산기를 만들어본 적이 있다. 이 계산기 프로그램에 메뉴를 추가하도록 한다. 다음과 같은 메뉴를 화면에 출력하고 사용자가 메뉴 중에서 하나를 선택할 때 까지 반복을 계속한다. do...while 반복문을 사용하여 사용자가 적절한 선택을 했는지를 검사하도록 하라. 만약 사용자가 A, S, M, D, Q가 아닌 다른 문자를 입력하면 "연산을 선택하시오:" 메시지를 계속해서 출력한다. 하나의 메뉴가 선택되면 해당되는 연산을 실행하고 다시 메뉴를 선택할 수 있도록 하라. 반복을 종료하는 메뉴인 Q는 break 문을 이용하여 구현하도록 하라.

1)정수계산기

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
#include <stdio.h>
int main(void)
{
char a;
int x,y;
printf("****************\n");
printf("A----Add\n");
printf("S----Subtract\n");
printf("M----Multiply\n");
printf("D----Divide\n");
printf("Q----Quit\n");
printf("****************\n");
do{
printf("연산을 선택하시오:");
scanf(" %c"&a);
if(a=='Q')
    break;
if((a=='A')||(a=='S')||(a=='M')||(a=='D'))
{
    printf("두 수를 공백으로 분리하여 입력하세요: ");
scanf("%d %d"&x, &y);
if(a=='A')
    printf("연산의 결과는 %d입니다.\n", x+y);
else if(a=='S')
    printf("연산의 결과는 %d입니다.\n", x-y);
else if(a=='M')
    printf("연산의 결과는 %d입니다.\n", x*y);
else if(a=='D')
    printf("연산의 결과는 %d입니다.\n", x/y);
break;
}
}while(1);
return 0;
}
cs




2)실수계산기

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
#include <stdio.h>
int main(void)
{
char a;
double x,y;
printf("****************\n");
printf("A----Add\n");
printf("S----Subtract\n");
printf("M----Multiply\n");
printf("D----Divide\n");
printf("Q----Quit\n");
printf("****************\n");
do{
printf("연산을 선택하시오:");
scanf(" %c"&a);
if(a=='Q')
    break;
if((a=='A')||(a=='S')||(a=='M')||(a=='D'))
{
    printf("두 수를 공백으로 분리하여 입력하세요: ");
scanf("%lf %lf"&x, &y);
if(a=='A')
    printf("연산의 결과는 %lf입니다.\n", x+y);
else if(a=='S')
    printf("연산의 결과는 %lf입니다.\n", x-y);
else if(a=='M')
    printf("연산의 결과는 %lf입니다.\n", x*y);
else if(a=='D')
    printf("연산의 결과는 %lf입니다.\n", x/y);
break;
}
}while(1);
return 0;
}
cs


반응형

+ Recent posts