标题描写 读入一个只包含 , -, *, / 的非负整数核算表达式,核算该表达式的值。 输入 检验输入包含若干检验用例,每一个检验用例占一行,每行不逾越200个字符,整数和运算符之间用一个空格分隔。没有不合法表达式。当一行中只需0时输入结束,相应的效果不要输出。 输出 对每一个检验用例输出1行,即该表达式的值,精确到小数点后2位。 样例输入 30 / 90 - 26 97 http://www.powerkp.info/linked/20130315.do - 5 - 6 - 13 / 88 * 6 51 / 29 79 * 87 57 * 92 0 样例输出 12178.21 提示 [ ] *** 提示已躲藏,点击上方 [ ] 可闪现 *** 来历 2006年浙江大学核算机及软件工程研讨生机试真题 【思路】: /********************************* * 日期:2013-3-15 * 做者:SJF0115 * 题号: 天勤OJ 标题1100: 简略核算器 * 来历:http://www.acmclub.com/problem.php?id=1100(http://acm.hdu.edu.cn/showproblem.php?pid=1237) * 效果:AC * 来历:2006年浙江大学核算机及软件工程研讨生机试真题 * 总结: **********************************/ #include #include #include #include using namespace std; //算符优先级 char Precede(char c1,char c2){ switch(c1){ case ' ': case '-': if(c2 == '*' || c2 == '/'){ return '<'; } else{ return '>'; } break; case '*': case '/': return '>'; break; case '#': return '<'; break; } } //运算 double Operate(double a,double b,char c){ switch(c){ case ' ': return a b; break; case '-': return a - b; break; case '*': return a * b; break; case '/': return a / b; break; } } int main(){ int i,len,n; char str[1001]; while(gets(str) http://www.1111kp.info/linked/20130315.do