天天看點

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-;
    int pos=;
    for (int i=l-;i>=;i--){
        if (san[i]==' '){
            pos=i;
            for (int j=pos+;j<=pointer;j++){
                cout<<san[j];
            }
            pointer=pos-;
            cout<<" ";
        }
    }
    for (int k=;k<=pointer;k++) cout<<san[k];
    return ; 
}
           

繼續閱讀