⽤switch语句编程设计⼀个简单的计算器程序
⽤switch语句编程设计⼀个简单的计算器程序。 要求根据⽤户从键盘输⼊的表达式(注意操作数与运算符之间没有空格): 操作数1 运算符op 操作数2 计算表达式的值,指定的算术运算符为加(+)、减(-)、乘(*)、除(/)。 编程要求:程序能进⾏浮点数的算术运算,有⽤户输⼊输出提⽰信息。
提⽰:因为除法中的除数不能为0,因此关键在于如何⽐较浮点变量data2和常数0是否相等。作为整型变量跟0的⽐较,简单的==就可以解决。⽽浮点型等实型变量需要⽤ if (fabs(data2) <= 1e-7) 进⾏判断(即判断其是否⾜够⼩)。若使⽤函数fabs,需要包含头⽂件math.h注意事项
输⼊的数据中操作数与运算符之间没有空格,例如1+5
需要处理除数为0的情况。如果除数为0,则输出提⽰信息: 除数不能为0
需要判断⽤户输⼊的运算符是否是+-*/,如果符号不对,输出:运算符有误
switch函数用法举例结果输出保留2位⼩数
#include<stdio.h>
#include <math.h>
int main()
{
float x,y,z;
char c;
printf("请输⼊计算的式⼦");
scanf("%f%c%f",&x,&c,&y);
switch(c)
{
case'+':z=x+y;printf("%.2f",z);break;
case'-':z=x-y;printf("%.2f",z);break;
case'*':z=x*y;printf("%.2f",z);break;
case'/':
if(fabs(y)<=1e-7)
{
printf("除数不能为0");
break ;
}
else
{
z=x/y;
printf("%.2f",z);break;
}
default:printf("运算符有误");break;
}
return 0;
}
注意:由于分母不能为0,所以除法要先判断是否为0再进⾏运算。
运算结果
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论