蒟蒻有个问题求问!

P1449 后缀表达式

scanf("%c",ch)的返回值是读取到的数据的个数,肯定要返回int类型。int类型和char类型,肯定不相等,所以scanf("%c",&ch)!='@'一直为true,所以会死循环咯 附上ACcode: ```cpp #include <bits/stdc++.h> using namespace std; int s[1001],len=0; void readint(){ int tmp=0; while (1){ char c; c=getchar(); if (c=='@') return; if ((c>='0')&&(c<='9')){tmp*=10; tmp+=c-48; continue;} if (c=='.'){len++;s[len]=tmp;tmp=0;continue;} if (c=='+'){s[len-1]+=s[len];len--;s[len+1]=0;continue;} if (c=='*'){s[len-1]*=s[len];len--;s[len+1]=0;continue;} if (c=='-'){s[len-1]-=s[len];len--;s[len+1]=0;continue;} if (c=='/'){s[len-1]/=s[len];len--;s[len+1]=0;continue;} } } int main(){ readint(); cout<<s[1]<<endl; return 0; } ``` ~~恕我吐槽一下,都综应班了还问c++语言问题~~
by Altria_Pendragon_ @ 2017-12-08 12:31:45


|