c语言“三个数的混合运算”,我编了一个计算器程序,可是只能算出两个数的结果,到底要怎么修改?

问题描述:

c语言“三个数的混合运算”,我编了一个计算器程序,可是只能算出两个数的结果,到底要怎么修改?
#include
main()
{
float x,y,z,i;
char o;
printf("\n请输入三个运算量:");
scanf("%f%f%f",&x,&y,&z);
getchar();
printf("\n请选择运算符+、-、*、/:");
o=getchar();
switch(o)
{
case '+':i=x+y+z;break;
case '-':i=x-y-z;break;
case '*':i=x*y*z;break;
case '/':i=x/y/z;break;
default:printf("%c不是运算符\n",o);
}
printf("%0.2f\n",x,y,z,i,o);
}
1个回答 分类:综合 2014-10-20

问题解答:

我来补答
printf("%0.2f\n",x,y,z,i,o);这一句,输出控制符只有一个,只能输出x的值,你要写上其他变量的输出控制才行
再问: 能发一个修改好的程序出来吗,我的c语言编程实在不行,如果没有问题,全部财富都是你的了!
再答: printf("%0.2f\n",x,y,z,i,o);改成printf("%0.2f%0.2f%0.2f%0.2f%0.2f\n",x,y,z,i,o);就行了,在此之前要把运算好的值存在要输出值的变量之中;用数组的话会方便一些。代码如下: #include main() { float x,y,z,i[4]; int j; char o; printf("\n请输入三个运算量:"); scanf("%f%f%f",&x,&y,&z); getchar(); printf("\n请选择运算符+、-、*、/:"); o=getchar(); switch(o) { case '+':i[0]=x+y+z;break; case '-':i[1]=x-y-z;break; case '*':i[2]=x*y*z;break; case '/':i[3]=x/y/z;break; default:printf("%c不是运算符\n",o); } for(j=0;j
 
 
展开全文阅读
剩余:2000
上一页:为什么只选B
下一页:第8题练习