c – 解释频率[toupper(new_letter) – ‘A’];

所以我一直在寻找一个问题的解决方案,一步涉及计算每个独特字母的频率.我到处都有相同的数组递增器.我没有看到这种形式,也没有完全理解它.我试图找到格式的支持文档,但无法弄清楚它实际上做了什么.我可以让它工作;但是,我不确定每个peice代表什么.

Peice我有问题理解是这里的括号里面发生了什么.

frequency[toupper(new_letter) - 'A']++;

频率是阵列的地方

例如:count number of times a character appears in an array?

算法:

>打开文件/读一封信.
>搜索新字母的字母数组.
>如果新信件存在:增加频率槽
那封信:频率[toupper(new_letter) – ‘A’];如果是新的
字母丢失,添加到数组并将频率设置为1.
>处理完所有字母后,打印出频率数组:`

cout<< '一个'
   index<< “:”<<频率[指数]<< ENDL;
任何帮助理解都会很有意义.

解决方法

这只是一个数组.也许令你困惑的部分是toupper(new_letter) – ‘A’我们在这里做的是 – 我们将字母转换为upercase,然后从结果的ASCII代码中减去’A’的ASCII代码.因此,结果是[0-25]范围内的数字.之后,通过将其添加到’A’,我们得到origianl大写字符.至于算法的其余部分 – 这就像 counting sort一样.

相关文章

本程序的编译和运行环境如下(如果有运行方面的问题欢迎在评...
水了一学期的院选修,万万没想到期末考试还有比较硬核的编程...
补充一下,先前文章末尾给出的下载链接的完整代码含有部分C&...
思路如标题所说采用模N取余法,难点是这个除法过程如何实现。...
本篇博客有更新!!!更新后效果图如下: 文章末尾的完整代码...
刚开始学习模块化程序设计时,估计大家都被形参和实参搞迷糊...