句子逆序
HJ13 句子逆序
描述
将一个英文语句以单词为单位逆序排放。例如“I am a boy”,逆序排放后为“boy a am I”
所有单词之间用一个空格隔开,语句中除了英文字母外,不再包含其他字符
输入描述:
输入一个英文语句,每个单词用空格隔开。保证输入只包含空格和字母。
输出描述:
得到逆序的句子)
示例1
输入:
I am a boy
输出:
boy a am I
个人答案:
#include<iostream>
#include<string>
using namespace std;
int main()
{
string Input;
getline(cin, Input);
string output;
int flag = 0;
for (size_t i = Input.length() - 1; i > 0; i--)
{
if (Input[i] == ' ')
{
if (flag!=0)
{
output += Input.substr(i,flag-i);
flag = i;
//system("paused");
}
else
{
output += Input.substr(i+1);
flag = i;
}
}
}
if (flag == 0)
{
cout <<Input << endl;
}
else
{
output += " ";
output += Input.substr(0, flag);
cout << output << endl;
}
return 0;
}