28:单词倒排

来源:互联网 发布:淘宝号怎么申请注册 编辑:程序博客网 时间:2024/05/16 07:34

原题链接

总时间限制: 
1000ms 
内存限制: 
65536kB
描述

编写程序,读入一行英文(只包含字母和空格,单词间以单个空格分隔),将所有单词的顺序倒排并输出,依然以单个空格分隔。

输入
输入为一个字符串(字符串长度至多为100)。
输出
输出为按要求排序后的字符串。
样例输入
I am a student
样例输出
student a am I

源码

#include <iostream>#include <cstring>using namespace std;int main(){    string s;    int i=0, j, k;    getline(cin, s);    while (s[i] == ' ') i++;    s = s.substr(i);    k = s.size();    s = ' ' + s;    for (i=k; i>=0; i--){        if (s[i] == ' '){            for (j=i+1; j<=k; j++) cout << s[j];            if (i>1) cout << " ";            k = i-1;        }    }    cout << endl;    return 0;}