C语言计算器问题解决,要实现简单的四则运算,输入一个式子,可以返回运算结果

如:输入 4+3= 然后输出结果

#include<stdio.h>
#include<conio.h>
void main()
{
while(1)
{
float a=0,b=0,c=0,key;
char d;
printf("输入简单的四则运算表达式:\n");
scanf("%f%c%f",&a,&d,&b);
switch(d)
{
case'+': c=a+b;break;
case'-': c=a-b;break;
case'x':
case'*': c=a*b;break;
case'/': if(b>0) c=a/b;break;
default:break;
}
printf("%g%c%g=%g\n",a,d,b,c);
printf("继续(y) 退出(n)\n");
key =getch();
if(key=='n' || key=='N')
break;
}
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-09-18
先转后缀表达式,然后再计算,随便找本数据结构的书上都有的。
第2个回答  2011-09-18
#inlcude<stdioh>
main()
{
int a,b;
char ch,ch1;
scanf("%d%c%d%c",&a,&ch,&b,&ch1);
switch(ch)
{
case '+':printf("%d%c%d%c%d",a,ch,b,ch1,a+b);break;
case '-':printf("%d%c%d%c%d",a,ch,b,ch1,a-b);break;
case '*':printf("%d%c%d%c%d",a,ch,b,ch1,a*b);break;
case '/':printf("%d%c%d%c%d",a,ch,b,ch1,a/b);break;
default:printf("not!\n");
}
return 0;
}