题目描述:
对于一个不存在括号的表达式进行计算
输入:
存在多种数据,每组数据一行,表达式不存在空格
输出:
输出结果
样例输入:
6/2+3+3*4
样例输出:
18
参考代码:
/*
题目信息不完整,虽然样例输入表达式中全为整型,结果也为整型,
但可能会出现输入,输出中均为浮点型
这里,代码1:默认输入为整型,输出为浮点型
代码2:表达式中也包含浮点型和括号,且表达式中无空格。
*/
代码1:
#include<cstdio>
#include<cstring>
#include<cmath>
#include<stack>
using namespace std;
#define N 1001
char str[N];
int OP[4][4] =
{0,0,0,0,
0,0,0,0,
1,1,0,0,
1,1,0,0};//+,-,*,/
int getOP(char c) {
if (c == '+') return 0;
else if (c == '-') return 1;
else if (c == '*') return 2;
else if (c == '/') return 3;
}
int main() {
while (scanf("%s", str) != EOF) {
int len = strlen(str);
int i = 0;
stack<double> num;
stack<char> op;
while (i < len) {