c++用容器编写程序,按照字典序列出一个文件中的所有不同单词及出现次数
时间: 2024-02-18 17:05:42 浏览: 208
统计一个文件文件中,各单词出现的次数(c++)
4星 · 用户满意度95%
好的,这是一个使用 C++ STL 中的容器实现的程序,可以实现你的要求:
```c++
#include <iostream>
#include <fstream>
#include <string>
#include <map>
#include <algorithm>
using namespace std;
int main()
{
// 打开文件,读取内容
ifstream file("filename.txt");
string word;
map<string, int> word_count;
while (file >> word) {
// 转换为小写字母
transform(word.begin(), word.end(), word.begin(), ::tolower);
// 去除标点符号
word.erase(remove_if(word.begin(), word.end(), ::ispunct), word.end());
// 计数
word_count[word]++;
}
// 按字典序排序并输出
for (auto const& [word, count] : word_count) {
cout << word << " " << count << endl;
}
return 0;
}
```
你只需要将 `filename.txt` 替换为你想要统计的文件名即可。程序会输出每个单词及其出现次数,按照字典序排序。
阅读全文