題目描述:讀入乙個只包含 +, -, *, / 的非負整數計算表示式,計算該表示式的值。
輸入:測試輸入包含若干測試用例,每個測試用例佔一行,每行不超過200個字元,整數和運算子之間用乙個空格分隔。沒有非法表示式。當一行中只有0時輸入結束,相應的結果不要輸出。
輸出:對每個測試用例輸出1行,即該表示式的值,精確到小數點後2位。
樣例輸入:
1 + 24 + 2 * 5 - 7 / 11
0
樣例輸出:
3.0013.36
1.數字與操作符之間有空格
2.判斷算符優先順序
3.輸出格式
#include #include #include #include using namespace std;
int main()
s2.push(op);
cin>>num;
s1.push(num);
op=getchar();
} if(s2.top()=='*'||s2.top()=='/')
//儲存到運算元陣列和操作符陣列中,按逆序運算
int datalen,oplen;
int datatop,optop;
int i=0;
while(!s1.empty())
datalen=i;
datatop=i-1;
int j=0;
while(!s2.empty())
oplen=j;
optop=j-1;
for(int k=optop;k>=0;--k)
else if(operate[k]=='-')
}cout<
九度OJ 1019 簡單計算器
include include include include include include include using namespace std 九度 1019 簡單計算器 10 9 2014 liu 1 將中綴表示式轉換成字首表示式或者是字尾表示式 mapmapoperator int ge...
九度OJ 題目1019 簡單計算器
題目描述 讀入乙個只包含 的非負整數計算表示式,計算該表示式的值。輸入 測試輸入包含若干測試用例,每個測試用例佔一行,每行不超過200個字元,整數和運算子之間用乙個空格分隔。沒有非法表示式。當一行中只有0時輸入結束,相應的結果不要輸出。輸出 對每個測試用例輸出1行,即該表示式的值,精確到小數點後2位...
九度OJ 題目1019 簡單計算器
題目描述 讀入乙個只包含 的非負整數計算表示式,計算該表示式的值。輸入 測試輸入包含若干測試用例,每個測試用例佔一行,每行不超過200個字元,整數和運算子之間用乙個空格分隔。沒有非法表示式。當一行中只有0時輸入結束,相應的結果不要輸出。輸出 對每個測試用例輸出1行,即該表示式的值,精確到小數點後2位...