讲道理并不算难的一个题目,只要找空格然后隔开来倒转就可以了,但是过了一个暑假没碰,还真的不是很好想起来,翻了一下各种函数的用法才打出来
#include <iostream>
#include <string>
using namespace std;
string reverse(string a)
{
string b = a;
for (int i = 0; i <= a.length() - 1; i++)
{
b[i] = a[a.length() - 1 - i];
}
return b;
}
int main()
{
int n;
int left;
string ss;
cin >> n;
cin.get();
for (int i = 1; i <= n; i++)
{
getline(cin, ss);
left = 0;
string tag1, tag2;
tag1 = tag2 = "";
for (;;)
{
if (ss.find(" ", left) != string::npos)
{
tag2 = ss.substr(left, ss.find(" ", left)-left);
tag2 = reverse(tag2);
tag1 += tag2;
tag1 += " ";
left = ss.find(" ", left) + 1;
}
else
{
tag2 = ss.substr(left, ss.length() - left);
tag2 = reverse(tag2);
tag1 += tag2;
break;
}
}
cout << tag1 << endl;
}
}