会不会是换行符造成的?
by xiaoyuhao0503 @ 2024-02-01 12:37:21
@[jianxing04](/user/1037870)
给你看一下我的代码```
#include <bits/stdc++.h>
using namespace std;
stack<int> st;
string str;
void deal(char op) {
int a = st.top();
st.pop();
int b = st.top();
st.pop();
if (op == '+')
{
st.push(b + a);
}
else if (op == '-')
{
st.push(b - a);
}
else if (op == '*')
{
st.push(b * a);
}
else
{
st.push(b / a);
}
}
int main() {
cin >> str;
int num = 0;
for (int i = 0; i < str.size(); i++) {
if(str[i] >= '0' && str[i] <= '9')
{
num = num * 10 + (str[i] - '0');
}
else if(str[i] == '.')
{
st.push(num);
num = 0;
}
else if(str[i] != '@')
{
deal(str[i]);
}
}
cout << st.top() << endl;
return 0;
}
```
@[jianxing04](/user/1037870)
by wpc_120318 @ 2024-02-03 14:29:47