반응형
앞장에서 간단한 정수 계산기를 만들어본 적이 있다. 이 계산기 프로그램에 메뉴를 추가하도록 한다. 다음과 같은 메뉴를 화면에 출력하고 사용자가 메뉴 중에서 하나를 선택할 때 까지 반복을 계속한다. 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 |
반응형
'컴퓨터 & 프로그래밍 & 전자공학 > C언어' 카테고리의 다른 글
별표 막대 그리기 (0) | 2016.07.21 |
---|---|
모든 소수를 찾는 프로그램 (0) | 2016.07.21 |
시간을 지연시킬 목적으로 사용하는 반복문 (0) | 2016.07.20 |
중첩 반복문 (숫자 출력) (0) | 2016.07.20 |
반복 루프를 사용하여 다음과 같은 패턴을 출력하는 프로그램 작성 (0) | 2016.07.20 |