1009 说反话
给定一句英语,要求你编写程序,将句中所有单词的顺序颠倒输出。
输入格式:测试输入包含一个测试用例,在一行内给出总长度不超过80的字符串。字符串由若干单词和若干空格组成,其中单词是由英文字母(大小写有区分)组成的字符串,单词之间用1个空格分开,输入保证句子末尾没有多余的空格。
输出格式:每个测试用例的输出占一行,输出倒序后的句子。
输入样例:
Hello World Here I Come
输出样例:
Come I Here World Hello
题解:使用栈来存储每一个字符串,在读取结束后,将栈中的数据输出即可。代码如下:
1 #include<iostream> 2 #include<string> 3 #include<stack> 4 #include<stdio.h> 5 6 using namespace std; 7 8 int main() 9 { 10 stack<string> ac; 11 string a; 12 char c; 13 cin>>a; 14 ac.push(a); 15 while( (c = getchar()) != ‘\n‘){ 16 if( c == ‘ ‘){ 17 cin>>a; 18 ac.push(a); 19 } 20 } 21 a = ac.top(); 22 cout<<a; 23 ac.pop(); 24 while( !ac.empty()){ 25 a = ac.top(); 26 cout<<" "<<a; 27 ac.pop(); 28 } 29 return 0; 30 }
原文地址:https://www.cnblogs.com/yxp400/p/9447949.html
时间: 2024-11-13 15:23:19