PAT 乙级 1009

160 阅读1分钟

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

输入格式:

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

输出格式:

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

输入样例:

Hello World Here I Come

      
    

输出样例:

Come I Here World Hello

#include<iostream>

 #include<string>

 using namespace std; 

int main() 

string user[80];

 int i;

 for (i = 0; i < 80; i++) 

{ cin >> user[i];

 if (getchar() == '\n'){ 

 break; //到换行符结束 } 

 }

 for (i; i >= 0; i--)

 {

 cout << user[i]; 

 if (i != 0) cout << " ";

//cii值不同 1、空格字符:空格字符的对应的ascii值为0。

 // 2、空字符:空字符的对应的ascii值为32。 

 }

 system("pause");

 return 0; }

另一个方法

#include<iostream> 

#include<string>

 using namespace std; 

int main() {

 stack<string> v; 

 string s; 

 while(cin >> s) v.push(s); 

 cout << v.top(); v.pop(); 

 while(!v.empty()) {

 cout << " " << v.top(); 

 v.pop();

 } 

system("pause"); 

return 0;

 }