Run ID:3539

提交时间:2024-06-15 10:25:04

# include<iostream> # include<cstring> # include<algorithm> using namespace std; //思路: //1.遍历字符串s,找到每一个单词并记录起来存入s1 // 怎么找到单词?空格+单词,注意处理首个单词,单词长度用变量c记录,遇到空格清0 //2.将s1反转,reverse()函数 string s,s1;//s原始字符串,s1取出的单词 int c,p;//c单词长度,p单词出现的位置下标 int main(){ getline(cin,s); int lens=s.size(); for(int i=0;i<lens;i++){ if(i==0&&s[i]!=' ') p=i;//处理第一个单词非空格 if(s[i]!=' '){ c++; } else{ s1=s.substr(p,c); //cout<<s1<<endl; //逆序输出 reverse(s1.begin(),s1.end()); cout<<s1; //for(int j=s1.size()-1;j>=0;j--) // cout<<s1[j]; cout<<" "; p=i+1; c=0; } } s1=s.substr(p,c); //cout<<s1<<endl; //逆序输出 for(int j=s1.size()-1;j>=0;j--) cout<<s1[j]; if(s[lens-1]==' ') cout<<" "; return 0; }