75分求助

P1553 数字反转(升级版)

@[Wyj159](/user/699506) ``` #include<bits/stdc++.h> using namespace std; char a[30];int y=1,w=0,x=0,u=0; int main(){ cin>>a; if(strlen(a)==1){ cout<<a; return 0; } for(int i=0;i<strlen(a);i++){ if(a[i]=='.'){y=2;x=i;} if(a[i]=='/'){y=3;x=i;} if(a[i]=='%')y=4; } if(y==1){ for(int i=strlen(a)-1;i>=0;i--) if(a[i]=='0'&&w==1||a[i]!='0') w=1,cout<<a[i]; return 0; } if(y==4){ for(int i=strlen(a)-2;i>=0;i--) if(a[i]=='0'&&w==1||a[i]!='0'){w=1;cout<<a[i];u=1; } if(u==0)cout<<'0'; cout<<'%'; return 0; } if(y==3){ for(int i=x-1;i>=0;i--) if(a[i]=='0'&&w==1||a[i]!='0'){w=1;cout<<a[i];u=1; } if(u==0)cout<<'0'; u=0; cout<<'/'; w=0; for(int i=strlen(a)-1;i>=x+1;i--) if(a[i]=='0'&&w==1||a[i]!='0'){w=1;cout<<a[i];u=1;} if(u==0)cout<<'0'; return 0; } for(int i=x-1;i>=0;i--) if(a[i]=='0'&&w==1||a[i]!='0'){w=1;cout<<a[i];u=1;} if(u==0)cout<<'0'; u=0; cout<<'.'; w=0; for(int i=strlen(a)-1;i>=x+1;i--){ for(int j=i;j>=x+1;j--){ if(a[j]!='0')w=1; } if(w==1){cout<<a[i];u=1; } w=0; } if(u==0)cout<<'0'; } ```
by zjhzs666 @ 2023-03-19 11:49:30


|