1 #include<stdio.h> 2 #include<stdbool.h> 3 void menu(){ 4 5 printf("****************************\n"); 6 printf("-------欢迎使用运算器-------\n"); 7 printf("-------1 开始使用 -------\n"); 8 printf("-------2 退出程序 -------\n"); 9 printf("****************************\n"); 10 } 11 int Add(int a,int b){ 12 return a+b; 13 } 14 int Sub(int a,int b){ 15 return a-b; 16 } 17 int Mul(int a,int b){ 18 return a*b; 19 } 20 void Div(int a,int b){ 21 printf("%d / %2d = %0.3f\n",a,b,(double)a/(double)b); 22 } 23 int main(){ 24 menu(); 25 int a,b,x,result; 26 char c,d; 27 bool tag = true; 28 while (1) { 29 scanf("%d",&x); 30 if(1==x){ 31 while(1){ 32 printf("请输入整数 运算符(+ - x /) 整数 \n"); 33 scanf("%d %c %d",&a,&c,&b); 34 if('+'==c){ 35 result=Add(a,b); 36 }else if('-'==c){ 37 result=Sub(a,b); 38 }else if('x'==c){ 39 40 result=Mul(a,b); 41 } 42 if('/'==c) { 43 if(0==b){ 44 printf("除数不能为零\n"); 45 continue; 46 }else{ 47 Div(a,b); 48 tag=false; 49 } 50 }else{ 51 printf("运算符输入有误!\n"); 52 tag=false; 53 } 54 if(tag){ 55 printf("%d%2c%2d=%d\n",a,c,b,result); 56 } 57 printf("是否继续运算 y(继续) n(退出)\n"); 58 scanf("%c",&d); 59 d=getchar(); 60 if(('y'==d)||('Y'==d)){ 61 continue; 62 }else if(('n'==d)||('N'==d)){ 63 printf("欢迎下次使用!\n"); 64 break; 65 }else{ 66 printf("输入有误\n"); 67 } 68 } 69 break; 70 } 71 else if(2==x){ 72 printf("欢迎下次使用\n"); 73 break; 74 }else{ 75 printf("输入有误,请重新输入\n"); 76 continue; 77 } 78 } 79 return 0; 80 }