单词翻转(信息学奥赛一本通-1144)
【题目描述】
输入一个句子(一行),将句子中的每一个单词翻转后输出。
【输入】
只有一行,为一个字符串,不超过500个字符。单词之间以空格隔开。
【输出】
翻转每一个单词后的字符串,单词之间的空格需与原文一致。
【输入样例】
hello world
【输出样例】
olleh dlrow
【题解代码】
#include<bits/stdc++.h>
using namespace std;
int main()
{
string s; getline(cin, s);
string str;
for(int i = 0; i < s.size(); i++)
{
if (s[i] != ' ')str += s[i];
else
{
reverse(str.begin(), str.end());
cout << str;
str.clear();
cout << s[i];
}
}
if (s[s.size() - 1] != ' ')
{
reverse(str.begin(), str.end());
cout << str;
}
return 0;
}