失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > 用C语言编写一个简单的可以进行加减乘除运算混合运算的计算器要求:1.可以进行 + -

用C语言编写一个简单的可以进行加减乘除运算混合运算的计算器要求:1.可以进行 + -

时间:2019-05-25 13:20:15

相关推荐

用C语言编写一个简单的可以进行加减乘除运算混合运算的计算器要求:1.可以进行 + -

问题补充:

用C语言编写一个简单的可以进行加减乘除运算混合运算的计算器要求:1.可以进行 + - * / 四则运算.2.可以进行混合运算.如 4+5*6=34只要能先乘除再加减就行,还要完整的程序,别只给一段,而且要能运行.

答案:

/* Note:Your choice is C IDE */

#include stdio.h

#include stdlib.h

#include ctype.h

int n=0;

char record[20];

float product();

float change();

float muli()

{\x09float summ;

\x09summ=product();

\x09while(record[n]==-||record[n]==+)

\x09{\x09\x09switch(record[n])

\x09\x09{

\x09\x09\x09case +:n++;summ+=product();break;

\x09\x09\x09case -:n++;summ-=product();break;

\x09\x09}

\x09}\x09return summ;

}float product()

{\x09float sump;

\x09sump=change();

\x09while(record[n]==*||record[n]==/)

\x09{\x09\x09switch(record[n])

\x09\x09{

\x09\x09\x09case *:n++;sump*=change();break;

\x09\x09\x09case /:n++;sump/=change();break;

\x09\x09}

\x09}\x09return sump;

}float change()

{\x09float sumc;

\x09char rec[20],i=0;

\x09if(record[n]==()

\x09{\x09\x09n++;

\x09\x09sumc=muli();

\x09}\x09if(record[n]==))

\x09 n++;

\x09 while(isdigit(record[n])||record[n]==.)

\x09 {\x09 \x09while(isdigit(record[n])||record[n]==.)

\x09 \x09\x09rec[i++]=record[n++];

\x09 \x09\x09rec[i]=\;

\x09 \x09\x09sumc=atof(rec);

\x09 }\x09 return sumc;\x09}void main(){\x09while(1)\x09{\x09n=0;\x09scanf(%s,record);\x09printf(%s=%g\n,record,muli());\x09} }这个是比较简单的.但是有点难理解.不过运行绝对正确.还支持括号.但是在这个程序里面我加没有出错处理.另一种方法是用栈写.这个好理解.但是麻烦.

用C语言编写一个简单的可以进行加减乘除运算混合运算的计算器要求:1.可以进行 + - * / 四则运

如果觉得《用C语言编写一个简单的可以进行加减乘除运算混合运算的计算器要求:1.可以进行 + -》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。