计算单词中的字母
Counting Letters in Word
我在如何开始创建程序时遇到了麻烦,该程序计算文件中单词中的.txt字母,如果字母数大于20,则打印它。有人知道如何启动或有一些类似的程序来帮助我吗?谢谢
一般来说,我通过以下方式启动程序:
#include <iostream>
void Pause();
int main()
{
std::cout << "My programn";
Pause();
return 0;
}
void Pause()
{
std::cout << "nnPaused. Press ENTER to continue.n";
std::cin.ignore(100000, 'n');
}
在我完成上述工作后,我添加内容。 假设采用 ASCII 编码,您可以做出一些假设:
int counts[256] = {0};
char c;
while (my_file.read(&c, 1))
{
counts[c]++;
}
上面的循环将计算文本文件中所有出现的字母。 下一个任务是打印数据:
for (int i = ' ' + 1; i < 127; ++i)
{
std::cout << "'" << ((char) i) << "': " << counts[i] << n;
}
这将打印出所有可打印字符的计数,从空格后的字符开始。
这是一个流行的开始作业,所以你应该能够在互联网上找到更多的例子。
编辑1:对于字
数std::string
和std::map
是你的朋友。
std::string word;
std::map<std::string, int> database;
while (my_file >> word)
{
std::map<std::string, int>::iterator iter;
iter = database.find(word);
if (iter != database.end())
{
map[word]++;
}
else
{
map[word] = 1;
}
}
上面的循环构建了一个 [word, count] 对的数据库。 如果该单词存在,则计数递增。
下一部分是遍历数据库,只打印长度> 20 的单词。 这是留给读者的练习。
相关文章:
- 如何使用 std::累积在 C++ 中计算总和立方体
- OpenGL - 在 NDC 中计算位置适用于着色器,但不适用于'regular'程序
- 当您在此单词中搜索单词时调整字符数组的大小?
- 计算单词中的音节数,但考虑到单词中彼此相邻的任何元音都算作一个音节
- 在二叉搜索树C++中计算平均值
- 如何使用Qt删除单词中的表行
- 在Javascript和C++中计算MD5哈希的不同结果
- 是否允许三元运算符在C++中计算两个操作数?
- 如何在 CSR 矩阵的对角线块中计算每行的非零数
- C++ - 使用结构数据类型将单词中的单个小写字符更改为大写,反之亦然
- 如何在 C++ 中计算字符串的算术运算
- 编译器在构造函数中计算的成员偏移量不正确
- 如何在数组类型的模板代码中计算std::size_t
- 在 c++ 中计算对数和 exp 函数
- 如何在C++中计算彼此相邻的元音?
- 在 OpenGL 中计算矩阵时,转换的正确顺序是什么?
- 如何在OpenCV 3.4.7中计算CV_32FC1 cv::GpuMat图像的(范围)直方图
- 计算单词中的字母
- 在 C++11 中计算字母和单词的双字母组合的 std::线程向量的问题
- 在C++控制台应用程序中计算单词中的字符数