[Coding by C++] 说反话 (20分)

题目描述

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

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

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

输入样例:

Hello World Here I Come

输出样例:

Come I Here World Hello

代码实现

#include<iostream>
#include<string>
using namespace std;

int main() {
	string str;
	getline(cin, str);
	string arr[80];
	int temp = 0;
	int j = 0;
	for (int i = 0; i < str.size(); i++) {
		if (str.at(i) == ' ') {
			arr[j++] = str.substr(temp, i - temp);
			temp = i + 1;
		}
	}
	arr[j] = str.substr(temp, str.size() - temp);
	for (int i = j; i > 0; i--) {
		cout << arr[i] << " ";
	}
	cout << arr[0];
}
©️2020 CSDN 皮肤主题: 游动-白 设计师:上身试试 返回首页