CCF-训练50题-NO.19-说反话

题目描述

给定一句英语,要求你编写程序,将句中所有单词的顺序颠倒输出。

输入

测试输入包含一个测试用例,在一行内给出总长度不超过80的字符串。字符串由若干单词和若干空格组成,其中单词是由英文字母(大小写有区分)组成的字符串,单词之间用1个空格分开,输入保证句子末尾没有多余的空格。

输出

每个测试用例的输出占一行,输出倒序后的句子。

样例代码

#include <iostream>
#include <string>
using namespace std;
int main(){
    string san;
    getline(cin,san);
    int l=san.size();
    int pointer=l-1;
    int pos=0;
    for (int i=l-1;i>=0;i--){
        if (san[i]==' '){
            pos=i;
            for (int j=pos+1;j<=pointer;j++){
                cout<<san[j];
            }
            pointer=pos-1;
            cout<<" ";
        }
    }
    for (int k=0;k<=pointer;k++) cout<<san[k];
    return 0; 
}
发布了53 篇原创文章 · 获赞 21 · 访问量 5万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章