求助大佬!拿错了?

P1553 数字反转(升级版)

``` #include<iostream> #include<cstdio> #include<string> using namespace std; string s; bool s1=1; void ptzs() { for(int i=s.length()-1;i>=0;i--) { if(s1==1&&s[i]==0) { continue; } else if(s1==1&&s[i]!=0) { cout<<s[i]; s1==1; } else { cout<<s[i]; } } } void xs(int a) { for(int i=a-1;i>=0;i--) { if(s1==1) { if(s[i]!='0') { cout<<s[i]; s1==0; } } else if(s1==0) { cout<<s[i]; } } cout<<"."; for(int i=s.length();i>=a+1;i--) { if(s1==1) { if(s[i]!='0') { cout<<s[i]; s1==0; } } else if(s1==0) { cout<<s[i]; } } } void fs(int b) { for(int i=b-1;i>=0;i--) { if(s1==1) { if(s[i]!='0') { cout<<s[i]; s1==0; } } else if(s1==0) { cout<<s[i]; } } cout<<"/"; for(int i=s.length();i>=b+1;i--) { if(s1==1) { if(s[i]!='0') { cout<<s[i]; s1==0; } } else if(s1==0) { cout<<s[i]; } } } void bfs() { for(int i=s.length()-2;i>=0;i--) { if(s1==1) { if(s[i]!='0') { cout<<s[i]; s1==0; } } else if(s1==0) { cout<<s[i]; } } cout<<"%"; } int main() { int a1,b1; bool a=false,b=false,c=false; cin>>s; for(int i=0;i<=s.length()-1;i++) { if(s[i]=='.') { a=true; a1=i; break; } if(s[i]=='/') { b=true; b1=i; break; } if(s[i]=='%') { c=true; break; } } if(a==true)xs(a1); else if(b==true)fs(b1); else if(c==true)bfs(); else ptzs(); cout<<endl; return 0; } ```
by Konnyaku_k @ 2023-04-03 14:20:56


ptzs 里面把 s1=1 写成了 s1==1。
by Rosaya @ 2023-04-03 17:12:03


粗略看了一眼好像所有都写错了。
by Rosaya @ 2023-04-03 17:12:55


@[Rosaya](/user/191748) ?
by Konnyaku_k @ 2023-04-06 17:09:20


@[XMTX1](/user/369200) 第 18 行,你的赋值语句写的两个等号。
by Rosaya @ 2023-04-06 20:36:12


@[Rosaya](/user/191748) ``` #include<iostream> #include<cstdio> #include<string> using namespace std; string s; bool s1=1; void ptzs() { for(int i=s.length()-1;i>=0;i--) { if(s1==1&&s[i]==0) { continue; } else if(s1==1&&s[i]!=0) { cout<<s[i]; s1==1; } else { cout<<s[i]; } } } void xs(int a) { for(int i=a-1;i>=0;i--) { if(s1==1) { if(s[i]!='0') { cout<<s[i]; s1==0; } } else if(s1==0) { cout<<s[i]; } } cout<<"."; for(int i=s.length();i>=a+1;i--) { if(s1==1) { if(s[i]!='0') { cout<<s[i]; s1==0; } } else if(s1==0) { cout<<s[i]; } } } void fs(int b) { for(int i=b-1;i>=0;i--) { if(s1==1) { if(s[i]!='0') { cout<<s[i]; s1==0; } } else if(s1==0) { cout<<s[i]; } } cout<<"/"; for(int i=s.length();i>=b+1;i--) { if(s1==1) { if(s[i]!='0') { cout<<s[i]; s1==0; } } else if(s1==0) { cout<<s[i]; } } } void bfs() { for(int i=s.length()-2;i>=0;i--) { if(s1==1) { if(s[i]!='0') { cout<<s[i]; s1==0; } } else if(s1==0) { cout<<s[i]; } } cout<<"%"; } int main() { int a1,b1; bool a=false,b=false,c=false; cin>>s; for(int i=0;i<=s.length()-1;i++) { if(s[i]=='.') { a=true; a1=i; break; } if(s[i]=='/') { b=true; b1=i; break; } if(s[i]=='%') { c=true; break; } } if(a==true)xs(a1); else if(b==true)fs(b1); else if(c==true)bfs(); else ptzs(); cout<<endl; return 0; } ``` 按你说的改了,30分
by Konnyaku_k @ 2023-04-07 14:58:10


改了啥,你这太荒谬了。 让别人调题给你把代码写出来才行吗? 你所有的等号赋值都写得 ```s1==0;``` 能不能想清楚再问。
by Rosaya @ 2023-04-07 15:18:01


@[Rosaya](/user/191748) 对不起,最近眼有点问题
by Konnyaku_k @ 2023-04-11 17:21:09


|