编写一个程序,要求用户输入一段文本,然后使用C++的string类和vector类来存储单词。程序应该将文本分割成单词,并将这些单词存储在vector中。然后,按照字母顺序对单词进行排序,并输出排序后的单词列表。
时间: 2024-03-18 13:39:15 浏览: 26
下面是一个简单的实现:
```
#include <iostream>
#include <string>
#include <vector>
#include <algorithm>
using namespace std;
int main()
{
string input_text;
vector<string> words;
// 读取用户输入的文本
cout << "请输入一段文本:" << endl;
getline(cin, input_text);
// 将文本分割成单词
string word;
for (char c : input_text)
{
if (isspace(c) || ispunct(c))
{
if (!word.empty())
{
words.push_back(word);
word.clear();
}
}
else
{
word += c;
}
}
if (!word.empty())
{
words.push_back(word);
}
// 按字母顺序排序单词列表
sort(words.begin(), words.end());
// 输出排序后的单词列表
cout << "排序后的单词列表:" << endl;
for (string w : words)
{
cout << w << endl;
}
return 0;
}
```
这个程序首先读取用户输入的文本,然后使用循环将文本分割成单词。分割时,如果遇到空格或标点符号,就将当前单词存储到vector中,并清空word字符串以准备读取下一个单词。最后,使用sort函数按字母顺序对单词列表进行排序,并输出排序后的单词列表。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)