题解 | #句子逆序#
句子逆序
https://www.nowcoder.com/practice/48b3cb4e3c694d9da5526e6255bb73c3
#include <iostream>
using namespace std;
int main() {
string s;
getline(cin, s);
int res = 0;
for (int i = s.length() - 1; i >= 0; i--) {
if (s[i] != ' ') {
res++; // 计算在到空格前,字符串的长度,也就是完整单词的长度
}
if (s[i] == ' ') {
//当遇到空格时候,输出空格后面的单词
for (int j = i + 1; j < i + res + 1; j++) {
cout << s[j];
}
cout << ' ';
res = 0; // 这个标志位重新为0,
}
if (i == 0) { // 当到句首时候,输出第一个单词
for (int k = i; k < i + res; k++) {
cout << s[k];
}
}
}
}
