求助,“/”和“.”那里有问题,但不知道咋改
查看原帖
求助,“/”和“.”那里有问题,但不知道咋改
1029471
zaobei楼主2023/8/8 16:00
#include<iostream>
using namespace std;
string s;
char temp;
int x=0;

int main(){
    cin>>s;
    for(int i=0;i<s.size();i++){
        x+=1;
        if(s[i]=='/'||s[i]=='.'){
            x-=1;
            for(int j=0;j<=i/2;j++){
                temp=s[j];
                s[j]=s[i-j-1];
                s[i-j-1]=temp;
            }
            for(int k=i+1;k<=(s.size()+k-i)/2;k++){
                temp=s[k];
                s[k]=s[s.size()-k+i];
                s[s.size()-k+i]=temp;
            }
        }
    }
    if(s[s.size()-1]=='%'){
        x-=1;
        for(int i=0;i<=(s.size()-2)/2;i++){
                    temp=s[i];
                    s[i]=s[s.size()-i-2];
                    s[s.size()-i-2]=temp;
                }

    }
    if(x==s.size()){
        for(int i=0;i<=s.size()/2;i++){
            temp=s[i];
            s[i]=s[s.size()-i-1];
            s[s.size()-i-1]=temp;
        }
    }
    for(int i=s.size()-1;i>=1;i--){
        if(s[i]=='0'){
            s[i]=' ';
        }
        else{
            break;
        }
    }
    for(int i=0;i<s.size();i++){
        if(s[i]!='0'){
            break;
        }

        else{
            for(int j=i;j<s.size();j++){
                s[j]=s[j+1];
            }
            i=-1;
        }
    }
    cout<<s;

    return 0;
}
2023/8/8 16:00
加载中...