用C语言编写一个简单的可以进行四则运算混合运算的计算器!
要求:1.可以进行+-*/四则运算。2.可以进行混合运算。如3+2*2=73.可以进行小数运算。如1.2+2.4=3.6补充:本程序不要求窗体。另外请各位回答问题时不要直...
要求:
1.可以进行 + - * / 四则运算。
2.可以进行混合运算。如 3+2*2=7
3.可以进行小数运算。如 1.2+2.4=3.6
补充:本程序不要求窗体。
另外请各位回答问题时不要直接复制答案,请看要求!谢谢! 展开
1.可以进行 + - * / 四则运算。
2.可以进行混合运算。如 3+2*2=7
3.可以进行小数运算。如 1.2+2.4=3.6
补充:本程序不要求窗体。
另外请各位回答问题时不要直接复制答案,请看要求!谢谢! 展开
2个回答
2010-12-22
展开全部
scanf("%c",&c[i]);
}
for(i=0;c[i]!='=';i++)
{
if(c[i]=='*'||c[i]=='/')
{
switch(c[i])
{
case '*': a[i]=a[i]*a[i+1];
a[i+1]=0;
t=i;
h=i;
break;
case '/': if(a[i+1]==0)
{
printf("error");
break;
}
else
{
a[i]=a[i]/a[i+1];
a[i+1]=0;
t=i;
h=i;
break;
}
}
}
break;
}
for(i=t+1;c[i]!='=';i++)
{
if(c[i]=='*'||c[i]=='/')
{
if(i==h+1)
{
switch(c[i])
{
case '*': a[t]=a[t]*a[i+1];
a[i+1]=0;
h++;
break;
case '/': if(a[i+1]==0)
{
printf("error");
break;
}
else
{
a[i]=a[i]/a[i+1];
a[i+1]=0;
t=i;
h=i;
break;
}
}
}
else
{
switch(c[i])
{
case '*': t=i;
h=i;
a[t]=a[t]*a[i+1];
a[i+1]=0;
break;
case '/': if(a[i]==0)
{
printf("error");
break;
}
else
{
t=i;
h=i;
a[t]=a[t]/a[i+1];
a[i+1]=0;
break;
}
}
}
}
}
for(i=0;c[i]!='=';i++)
{
switch(c[i])
{
case '+': a[i+1]=a[i]+a[i+1];break;
case '-': a[i+1]=a[i]-a[i+1];break;
default: a[i+1]=a[i]+a[i+1];break;
}
}
printf("%d",a[i]);
}
}
for(i=0;c[i]!='=';i++)
{
if(c[i]=='*'||c[i]=='/')
{
switch(c[i])
{
case '*': a[i]=a[i]*a[i+1];
a[i+1]=0;
t=i;
h=i;
break;
case '/': if(a[i+1]==0)
{
printf("error");
break;
}
else
{
a[i]=a[i]/a[i+1];
a[i+1]=0;
t=i;
h=i;
break;
}
}
}
break;
}
for(i=t+1;c[i]!='=';i++)
{
if(c[i]=='*'||c[i]=='/')
{
if(i==h+1)
{
switch(c[i])
{
case '*': a[t]=a[t]*a[i+1];
a[i+1]=0;
h++;
break;
case '/': if(a[i+1]==0)
{
printf("error");
break;
}
else
{
a[i]=a[i]/a[i+1];
a[i+1]=0;
t=i;
h=i;
break;
}
}
}
else
{
switch(c[i])
{
case '*': t=i;
h=i;
a[t]=a[t]*a[i+1];
a[i+1]=0;
break;
case '/': if(a[i]==0)
{
printf("error");
break;
}
else
{
t=i;
h=i;
a[t]=a[t]/a[i+1];
a[i+1]=0;
break;
}
}
}
}
}
for(i=0;c[i]!='=';i++)
{
switch(c[i])
{
case '+': a[i+1]=a[i]+a[i+1];break;
case '-': a[i+1]=a[i]-a[i+1];break;
default: a[i+1]=a[i]+a[i+1];break;
}
}
printf("%d",a[i]);
}
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我不是回答问题的,我只是问一下你说的简答到底是什么概念,四则运算要考虑运算符优先级,要用栈和树的中缀表达式等知识点结合,如果输入一个式子然后自己算的话,这个可以吗?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询