使用devc写文本分析程序,计算每个字母出现频率
时间: 2024-05-09 08:14:16 浏览: 83
以下是使用Dev-C++编写的计算每个字母出现频率的程序:
```c++
#include <iostream>
#include <fstream>
#include <string>
#include <map>
#include <algorithm>
using namespace std;
int main()
{
map<char, int> frequency; // 创建一个字母频率的map
// 打开文件并读取文本
ifstream file("input.txt");
string text((istreambuf_iterator<char>(file)), istreambuf_iterator<char>());
// 统计每个字母出现的次数
for (char c : text) {
if (isalpha(c)) {
++frequency[tolower(c)];
}
}
// 按字母顺序输出结果
for (char c = 'a'; c <= 'z'; ++c) {
if (frequency[c] > 0) {
cout << c << ": " << frequency[c] << endl;
}
}
return 0;
}
```
该程序首先创建一个`map<char, int>`类型的`frequency`变量,用于存储每个字母出现的频率。然后,它打开一个名为`input.txt`的文件并读取其中的文本。接着,程序遍历文本中的每个字符,并在`frequency`中递增相应字母的计数器。最后,程序按字母顺序输出每个字母的频率。注意,程序忽略了文本中的非字母字符。
阅读全文