死循环了
查看原帖
死循环了
1080089
HardBlackPencil楼主2023/9/3 13:19
#include <bits/stdc++.h>
#include <stack>
using namespace std;

string s;
stack<int> zhan;

int main()
{
    cin >> s;
    char s1 = '.', s2 = '+', s3 = '-', s4 = '*', s5 = '/';
    int number = 0;
    char f;
    while ((f = getchar()) != '@')
    {
        if (f == s1)
        {
            zhan.push(number);
            number = 0;
        }
        else if (f == s2)
        {
            int b = zhan.top();
            zhan.pop();
            int a = zhan.top();
            zhan.pop();
            number = a + b;
            zhan.push(number);
            number = 0;
        }
        else if (f == s3)
        {
            int b = zhan.top();
            zhan.pop();
            int a = zhan.top();
            zhan.pop();
            number = a - b;
            zhan.push(number);
            number = 0;
        }
        else if (f == s4)
        {
            int b = zhan.top();
            zhan.pop();
            int a = zhan.top();
            zhan.pop();
            number = a * b;
            zhan.push(number);
            number = 0;
        }
        else if (f == s5)
        {
            int b = zhan.top();
            zhan.pop();
            int a = zhan.top();
            zhan.pop();
            number = a / b;
            zhan.push(number);
            number = 0;
        }
        else
            number = number * 10 + (int)f;
    }
    cout << zhan.top();
    return 0;
}

大佬们帮我看看这道题咋就死循环了o(╥﹏╥)o

2023/9/3 13:19
加载中...