本文共 653 字,大约阅读时间需要 2 分钟。
模拟简单运算器的工作。假设计算器只能进行加减乘除运算,运算数和结果都是整数,四种运算符的优先级相同,按从左到右的顺序计算。
输入在一行中给出一个四则运算算式,没有空格,且至少有一个操作数。遇等号”=”说明输入结束。
在一行中输出算式的运算结果,或者如果除法分母为0或有非法运算符,则输出错误信息“ERROR”。
1+2*10-10/2=
10
#includeint main(void){ int a, b; char op; scanf("%d", &a); while(1) { scanf("%c", &op); if (op == '=') break; scanf("%d", &b); if ((op == '/') && (b == 0)) { printf("ERROR\n"); goto end; } switch (op) { case '+': a += b; break; case '-': a -= b; break; case '*': a *= b; break; case '/': a /= b; break; default: printf("ERROR"); goto end; } } printf("%d\n", a);end: return 0;}
转载地址:http://fnnlf.baihongyu.com/