描述 小C很喜欢倒着写单词,现在给你一行小C写的文本,你能把每个单词都反转并输出它们吗? 输入描述 输入包含多组测试样例。第一行为一个整数T,代表测试样例的数量,后面跟着T个测试样例。 每个测试样例占一行,包含多个单词。一行最多有1000个字符。 输出描述 对于每一个测试样例,你应该输出转换后的文本。C++实现
时间: 2024-03-17 12:43:35 浏览: 77
用c++实现将文本每个单词首字母转换为大写
5星 · 资源好评率100%
好的,以下是 C++ 代码实现:
```cpp
#include <iostream>
#include <string>
#include <sstream>
#include <algorithm>
using namespace std;
int main() {
int T;
cin >> T;
getchar(); // 读取 T 后要读取回车符,否则会影响下一次输入
while (T--) {
string line, word;
getline(cin, line); // 读取一行字符串
stringstream ss(line); // 将字符串转换为流
while (ss >> word) { // 每次读取一个单词
reverse(word.begin(), word.end()); // 反转单词
cout << word << " "; // 输出单词并加上空格
}
cout << endl; // 每个测试样例输出完毕后换行
}
return 0;
}
```
代码思路:
1. 先读入一个整数 T,表示测试样例数量。
2. 对于每个测试样例,先读入一行字符串。
3. 将字符串转换为 stringstream 流,然后逐个读取单词。
4. 对于每个单词,使用 `reverse()` 函数将其反转。
5. 输出反转后的单词,并在单词之间加上空格。
6. 每个测试样例输出完毕后换行。
阅读全文