@[1875311061hsy](/user/1059776)
给你一个简单一点的代码,很容易理解。
```cpp
#include <bits/stdc++.h>
using namespace std;
int arr[55], num, top;
int main()
{
string s;
cin >> s;
for (int i = 0; i < s.size(); i++)
if (s[i] >= '0' && s[i] <= '9') //计算输入的数字。
num = num * 10 + (s[i] - '0');
else if (s[i] == '.') //当一个数结束时。
arr[++top] = num, num = 0;
else if (s[i] == '@') //当结束时退出循环。
break;
else if (s[i] == '+') //加法。
arr[--top] += arr[top + 1];
else if (s[i] == '-') //减法。
arr[--top] -= arr[top + 1];
else if (s[i] == '*') //乘法。
arr[--top] *= arr[top + 1];
else if (s[i] == '/') //除法。
arr[--top] /= arr[top + 1];
cout << arr[top] << endl; //输出最后的结果。
return 0;
}
```
by cleverclever @ 2023-08-20 17:32:32
@[cleverclever](/user/980130) 后面我也用这个写出来啦谢谢你
by HSyuio77 @ 2023-08-20 18:47:34
@[1875311061hsy](/user/1059776) 不客气OwO~
by cleverclever @ 2023-08-20 19:02:38