当前位置:首页 > C语言程序设计下mooc答案
case '%':printf(\ default:break; }
return 0; }
2、递归的方法计算含多个运算符的四则运算表达式字符串的值(15分) 题目内容:
请在上一题的基础上,采用递归的方法,计算含多个运算符的四则运算表达式字符串的值(无括号,但要考虑优先级)
输入格式:
多个运算符的四则运算表达式字符串
输出格式: 运算结果
输入样例: 3*2+3
输出样例: 9
时间限制:500ms内存限制:32000kb Code:
#include
static char op[100];
static int i,j,k,s,p[100]; scanf(\ p[0]=s;
for(i=0;1;i++) {
scanf(\ if(op[i]=='\\n') break; scanf(\ }
for(j=0;j
if(op[j]=='*'||op[j]=='/') {
if(op[j]=='*') {
p[j]*=p[j+1];
for(k=j;k op[k]=op[k+1]; p[k+1]=p[k+2]; } } else { p[j]/=p[j+1]; for(k=j;k op[k]=op[k+1]; p[k+1]=p[k+2]; } } i--;j--; } } for(j=0;j if(op[j]=='+'||op[j]=='-') { if(op[j]=='+') { p[j]+=p[j+1]; for(k=j;k op[k]=op[k+1]; p[k+1]=p[k+2]; } } else { p[j]-=p[j+1]; for(k=j;k op[k]=op[k+1]; p[k+1]=p[k+2]; } } i--;j--; } } printf(\ }
共分享92篇相关文档