栈的应用,将数字转换为整型压入栈中,诺遇到运算符则弹出栈中的两个元素,将运算结果压入栈中

#include <stdio.h>
#include<string.h>
int main() {
    long long s[100];
    int top = -1;
    char c[100];
    scanf("%s", c);
    for (int i = 0;i < strlen(c);i++) {
        if (c[i] >= '0' && c[i] <= '9') {
            long long ret = 0;
            while (c[i] >= '0' && c[i] <= '9') {
                ret = ret * 10 + c[i] - '0';
                i++;
            }
            s[++top] = ret;
        }
        else if (c[i] == '+' || c[i] == '-' || c[i] == '*' || c[i] == '/') {
            long long tmp = 0;
            switch (c[i]) {
            case '+':tmp = s[top-1] + s[top];
                break;
            case '-':tmp = s[top - 1] - s[top];
                break;
            case '*':tmp = s[top-1] * s[top];
                break;
            case '/':tmp = s[top - 1] / s[top];
                break;
            }
            s[--top] = tmp;
        }
        else if (c[i] == '@')break;

    }
    printf("%lld", s[top]);

    return 0;
}