반응형
#include<stdio.h>
int plus(int a, int b){
return a+b;
}
int minus(int a, int b){
return a-b;
}
int mu(int a, int b){
return a*b;
}
int di(int a, int b){
return a/b;
}
int main()
{
while(1){
int a = 0;
int b = 0;
char c;
printf("종료를 원하신다면 0 + 0 를 입력해주세요\n");
printf("숫자를 입력하세요 : ");
scanf("%d %c %d", &a, &c, &b);
printf("결과를 출력합니다 : ");
switch(c){
case '+':
printf("%d %c %d = %d\n\n",a, c, b, plus(a,b)); break;
case '-':
printf("%d %c %d = %d\n\n",a, c, b, minus(a,b)); break;
case '*':
printf("%d %c %d = %d\n\n",a, c, b, mu(a,b)); break;
case '/':
printf("%d %c %d = %d\n\n",a, c, b, di(a,b)); break;
default :
printf("다시 입력하세요 :"); break;
}
if(a==0 && c == '+' && b==0){
printf("계산기를 종료합니다.");
break;
}
}
}
먼저 연산자들을 함수로 선언해놨습니다.
그런 후에 switch-case문으로 경우를 나눠놨고, while문을 이용하여 계속 계산을 진행할 수 있게 해 두었습니다!
그리고 if문을 사용해 프로그램을 종료시켰습니다.
scanf("%d", n);
%d뒤에 띄어쓰기 있으면 무한루프에 빠져서 절대 못나옵니다ㅠ
(저는 이거 발견하는데 몇시간 걸렸습니다ㅠㅠ 처음에는 다 그런 거겠죠ㅜㅜ?)
반응형
'2019~2020 > 정보 과학' 카테고리의 다른 글
상항식, 하향식 재귀 (0) | 2019.08.23 |
---|---|
별찍기 (0) | 2019.08.23 |
두점의 중점 (0) | 2019.08.21 |
별찍기 개수 만큼 출력 (0) | 2019.08.19 |
택시 거리 계산하기 (0) | 2019.06.19 |