#include<stdio.h>
int main()
{
double a,b,c;//测试数据要求精度高,故用double
char d;//运算符号用char定义
scanf("%lf%c%lf",&a,&d,&b);//输入
if(d!='+'&&d!='-'&&d!='*'&&d!='/')//判断运算符输入错误情况
{
printf("Invalid operation!");
}
else
{
if(d=='/'&&b==0)//判断除数为0情况
{
printf("Wrong!Division by zero!");
}
else
{
switch(d)//先明确输入了是哪个运算符,再来相应计算
{
case'+':c=a+b;break;
case'-':c=a-b;break;
case'*':c=a*b;break;
case'/':c=a/b;break;
default:break;
}
printf("%.4lf%c%.4lf=%.4lf",a,d,b,c);//按格式输出%.4f保留小数点后4位
}
}
return 0;
}
总结:
switch()也可用于字符判断