给定一句英语,要求你编写程序,将句中所有单词的顺序颠倒输出。
输入格式:
测试输入包含一个测试用例,在一行内给出总长度不超过 80 的字符串。字符串由若干单词和若干空格组成,其中单词是由英文字母(大小写有区分)组成的字符串,单词之间用 1 个空格分开,输入保证句子末尾没有多余的空格。
输出格式:
每个测试用例的输出占一行,输出倒序后的句子。
输入样例:
Hello World Here I Come
输出样例:
Come I Here World Hello
注意:cin会将输入流中第一个非空白(空格、制表、换行等)字符和下一个空白字符之间的字节读取出来,存储到string对象中,空格和回车还在输入流中,所以用getchar读进来判断是空格还是回车,以此来判断是否读完。
#include <iostream>
#include <algorithm>
#include <vector>
#include <string>
#include <stdio.h>
using namespace std;
int main()
{
int i;
vector<string> str;
string strpart;
while(cin >> strpart)
{
str.push_back(strpart);
char c;
c = getchar();
if(c == '\n') break;
}
for(i = str.size() - 1; i > 0; i--)
{
cout << str[i] <<" ";
}
cout << str[i];
return 0;
}
本文介绍了一种通过编程实现英语句子中单词顺序颠倒的方法。输入为一个不超过80字符的英语句子,输出则是该句子中单词的逆序排列。文章详细解释了如何使用C++读取和处理字符串,包括利用cin读取单词并存储,以及通过getchar判断输入结束。
907

被折叠的 条评论
为什么被折叠?



