蒟蒻求助站外题捏 (悬赏关注 qwq)
查看原帖
蒟蒻求助站外题捏 (悬赏关注 qwq)
601292
Konjac_Jelly_6楼主2023/4/13 19:07

rt,这是题目: https://vjudge.net/problem/HDU-1237

本蒟蒻的代码:

#include<bits/stdc++.h>
using namespace std;
int main(){
    stack<double>num;
    stack<char>op;
    double n;
    char ch;
    while(scanf("%lf",&n)&&n!=0){
        num.push(n);
        while(1){
            ch=getchar();
            if(ch=='\n'){
                while(!op.empty()){
                    double a,b;
                    a=num.top();
                    num.pop();
                    b=num.top();
                        num.pop();
                    if(op.top()=='*'){
                        b*=a;
                        num.push(b);
                    }
                    if(op.top()=='/'){
                        b/=a;
                        num.push(b);
                    }
                    if(op.top()=='+'){
                        b+=a;
                        num.push(b);
                    }
                    if(op.top()=='-'){
                        b-=a;
                        num.push(b);
                    }
                    op.pop();
                }
                printf("%.2lf\n",num.top());
                num.pop();
                break;
            }
            else{
                ch=getchar();
                scanf("%lf",&n);
                if(ch=='*'||ch=='/')op.push(ch);
                else{
                    while(!op.empty()){
                        double a,b;
                        a=num.top();
                        num.pop();
                        b=num.top();
                        num.pop();
                        if(op.top()=='*'){
                            b*=a;
                            num.push(b);
                        }
                        if(op.top()=='/'){
                            b/=a;
                            num.push(b);
                        }
                        if(op.top()=='+'){
                            b+=a;
                            num.push(b);
                        }
                        if(op.top()=='-'){
                            b-=a;
                            num.push(b);
                        }
                        op.pop();
                    }
                    op.push(ch);
                }
                num.push(n);
            }
        }
    }
    return 0;
}

蒟蒻用G++交WA了,看不出哪里错了,调了一个多小时也没调出来。 望大佬们帮孩子看一眼。

2023/4/13 19:07
加载中...