#include <stdio.h>
int add (int x, int y);
int sub (int x, int y);
int mux (int x, int y);
double div (double x, double y);
int a,b;
void main()
{
int x,y,sum;
char n,g=\'n\';
while(1)//처음부터 끝까지 사용
{
printf(\" ************************\\n\");
printf(\" 원하는 번호를 선택하세요\\n\");
printf(\" ************************\\n\");
printf(\" 1. 입 력 \\n\");
printf(\" 2. 계산 하기 \\n\");
printf(\" 3. 종 료 \\n\");
printf(\" ************************\\n\");
printf(\" 입력 번호 :___\\b\\b\\b\");
scanf(\"%d\",&x);
if(x==1)
{
printf(\"\\n 두 수를 입력받습니다.\\n\");
printf(\"\\nEnter First Number : __\\b\\b\");
scanf(\"%d\",&a);
printf(\"Enter Second Number : __\\b\\b\");
scanf(\"%d\",&b);
printf(\"\\n입력 값은 %d 과(와) %d입니다.\\n\\n\",a,b);
}
else if(x==2)
{
printf(\"\\n계산할 연산종류를 선택하십시요.\\n\\n\");
printf(\" ************************\\n\");
printf(\" 원하는 번호를 선택하세요\\n\");
printf(\" ************************\\n\");
printf(\" 1. 더 하 기 \\n\");
printf(\" 2. 빼 기 \\n\");
printf(\" 3. 곱 하 기 \\n\");
printf(\" 4. 나 누 기 \\n\");
printf(\" ************************\\n\");
printf(\" 입력 번호 :___\\b\\b\\b\");
scanf(\"%d\",&y);
switch(y)
{
case 1:
add (a, b);
break;
case 2:
sub (a, b);
break;
case 3:
mux (a, b);
break;
case 4:
div (a, b);
default:
continue;
}
}
else if(x==3)
{
printf(\"\\n정말 종료합니까 ? (Y/N) \");
scanf(\" %c\",&g);
if(g==\'y\')
return 0;
else if(g==\'Y\')
return 0;
}
}
}
int add (int x, int y)
{
int z;
z=x+y;
printf(\"\\n%d 더하기 %d (은)는 %d 입니다.\\n\\n\",x,y,z);
}
int sub (int x, int y)
{
int z;
z=x-y;
printf(\"\\n%d 빼기 %d (은)는 %d 입니다.\\n\\n\",x,y,z);
}
int mux (int x, int y)
{
int z;
z=x*y;
printf(\"\\n%d 곱하기 %d (은)는 %d 입니다.\\n\\n\",x,y,z);
}
double div (double x, double y)
{
double z;
z=x/y;
printf(\"\\n%lf 나누기 %lf (은)는 %lf 입니다.\\n\\n\",x,y,z);
}
종료쪽만..
난 이런 sequence한 코드 보면 짜증부터 나더라 이젠 ㅋㅋ
아 이렇게 해야되네요 하면 할수록 신기하네
ㄴbreak;를 하건 return 0;을 하건의 문제가 아니라.. 메모리 문제일거임
scanf(\" %c\",&g); 에서 %c를 왜 한칸 띄고 써주나요?