用C++统计文章中字符出现的频率,要求使用文件输入输出流
时间: 2024-02-23 17:58:01 浏览: 64
vc++实现的字符统计,统计文章字符的个数的一个小型系统
可以使用C++的文件输入输出流(`ifstream`和`ofstream`)读取文件中的字符,并使用`std::map`来统计字符出现的频率。以下是一个简单的实现:
```cpp
#include <iostream>
#include <fstream>
#include <map>
int main() {
std::ifstream file("input.txt");
if (!file) {
std::cerr << "Failed to open file\n";
return 1;
}
std::map<char, int> freqs;
char c;
while (file.get(c)) {
if (std::isalpha(c)) {
++freqs[std::tolower(c)];
}
}
std::ofstream output("output.txt");
for (const auto& pair : freqs) {
output << pair.first << ": " << pair.second << '\n';
}
return 0;
}
```
该程序首先打开`input.txt`并检查是否成功打开,然后使用`std::map`来存储字符和它们的出现频率。在读取文件时,程序会将每个字母转换为小写字母,并将对应的计数器增加1。最后,程序会打开`output.txt`并将结果写入该文件中。
阅读全文