谁帮忙用switch编写一个简单的计算器,实现两个整型数的四则运算 。c语言

如题所述

代码如下:#include<stdio.h>
void main()
{
int a,b,sum,flag=0;
char fh; //用来记录用户输入的运算符
scanf("%d %c %d =",&a,&fh,&b); //按照这个格式输入运算符例如输入 “1 + 1 =”然后按回车
switch(fh)
{
case '+':sum=a+b;break;
case '-':sum=a-b;break;
case '*':sum=a*b;break;
case '/':
if(b!=0)
sum=a/b;
else
flag=1; //这是错误1
break;
default:flag=2;break; //如果输入的运算符不是+,-,*,./,则为错误2
/*注意,break很重要*/
}
if(flag==1) //这是错误1的情况
printf("错误:分母不能为零!\n");//如果你的编译器是TC,或者winTC最好把中文提示换成英文提示,下同
else if(flag==2) //这是错误2的情况
printf("错误:您输入的运算符错误!\n");
else //这是flag==0的情况,也就是不出错的情况
printf("%d %c %d = %d\n",a,fh,b,sum); //按照这样的格式输出
getchar();//作用是留住屏幕,wintc则应该使用getch()来留住屏幕,原理是输出运行结果后输入任意字符退出程序
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-04-24
#include<stdio.h>
void main()
{
char ch;
int x,y,sum=0;
scanf("%d %c %d",&x,&ch,&y);
switch(ch)
{
case '+':sum=x+y;
break;
case '-':sum=x-y;
break;
case '*':sum=x*y;
break;
case '/':sum=x/y;
break;
}
printf("%d%c%d=%d",x,ch,y,sum);
getch();
}