1.3 STL的应用 题目:对于输入给定的字符串将其反序输出。输入是先输入一个整数代表字符串的行数,然后是字符串。 Sample Input: Frankly, I don't think we'll make much money out of this scheme. madam I'm adam Sample Output hcum ekam Il'ew kniht t'nod I ,ylknarF .emehcs siht fo tuo yenom mada m'lma
时间: 2023-03-30 21:03:41 浏览: 129
可以使用 STL 中的 reverse 函数来实现字符串反转。具体代码如下:
#include <iostream>
#include <string>
#include <algorithm>
using namespace std;
int main() {
int n;
cin >> n;
cin.ignore(); // 忽略换行符
while (n--) {
string s;
getline(cin, s); // 读入一行字符串
reverse(s.begin(), s.end()); // 反转字符串
cout << s << endl; // 输出反转后的字符串
}
return ;
}
输入样例:
3
Frankly, I don't think we'll make much money out of this scheme.
madam I'm adam
Hello, world!
输出样例:
.emehcs siht fo tuo yenom hcum ekam ll'ew kniht t'nod I ,ylknarF
mada m'I madam
!dlrow ,olleH
相关问题
把输入的一个字符串按逆序重新排序其字符,并输出。
好的,这是一个可以回答的问题。字符串按逆序重新排序其字符的代码示例如下:
```
string str = "hello world";
reverse(str.begin(), str.end());
cout << str <<endl; //输出"dlrow olleh"
```
你可以根据需要修改输入的字符串,然后使用C++的STL库中的reverse函数来进行逆序排序,最终输出结果即可。
请问以上回答是否令您满意?
c++编写程序,实现功能:输入一个字符串(不包含空格),删除其中的"数字字符"后输出。
你可以使用C++的STL库中的字符串和算法模块来删除字符串中的数字字符。具体方法如下:
```cpp
#include <iostream>
#include <string>
#include <algorithm>
int main()
{
std::string str;
std::cout << "请输入一个字符串(不包含空格):" << std::endl;
std::cin >> str;
// 删除数字字符
str.erase(std::remove_if(str.begin(), str.end(), ::isdigit), str.end());
std::cout << "删除数字字符后的字符串为:" << str << std::endl;
return 0;
}
```
在这个示例程序中,我们首先定义了一个字符串变量`str`,并从标准输入流中读取一个字符串。然后,我们使用STL库中的`std::remove_if`算法来删除所有数字字符,这个算法需要传入一个谓词函数,这里我们使用C++标准库中的`::isdigit`函数来判断一个字符是否为数字字符。最后,我们使用`str.erase`函数删除所有符合条件的字符,从而得到一个不包含数字字符的新字符串,并输出到标准输出流中。