题解 | #句子逆序#

句子逆序

https://www.nowcoder.com/practice/48b3cb4e3c694d9da5526e6255bb73c3

#include <iostream>
using namespace std;
#include<string>

int main() {
    string str;
    getline(cin,str);
    int len=str.size();
    string str1;
    for(int i=len-1;i>=0;i--){
        str1=str1+str[i];
    }
    string result;
    string flag;
    for(int i=0;i<len;i++){
        if(str1[i]!=' '){           
            result+=str1[i];            
        }       
        else{
            int len1=result.size();
            for(int j=len1-1;j>=0;j--){
                cout<<result[j];
            }
            cout<<" ";
            result=flag;
        }              
    }

    int len2=result.size();
    while(len2){
        cout<<result[len2-1];
        len2-=1;
    }
        
}

这道题还是很好玩的,首先要接收带空格的字符串可以考虑使用getline函数,其次我先对接收到的字符串进行了逆序处理,再以空格作为判断条件,分别进行再次的逆序输出,期间我使用result来储存字符串,因此在最后一个字符串由于没有空格无法输出时,可以直接对result进行逆序输出,最终即可达成本题要求!

#牛客创作赏金赛#
全部评论

相关推荐

评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务