C语言进阶:[14]统计单词个数

 时间:2024-10-20 00:31:47

对一段英文文章进行单词统计,如果刚接触这样的问题,感觉比较棘手。要把问题分解开,

每一个小问题解决了,然后进行归并,大问题也就解决了。首先单词是以字符开始,并且连续个字符,直到下一个字符不是字符结束,并且这个字符不能是数字字符。核心问题就是找出一个单词。

查找单词的代码如下:C语言进阶:[14]统计单词个数

首先查询到第一字符,有可能是单词,然后连续查找字符,直到遇到第一个不是字符的字符,并且这个字符在本编程中是空字符和标点符号,还得考虑遇到字符串结束符\0。在代码中难得部分是字符串指针的处理即返回的是下一个可能是单词的查找开始位置。例如

h e l l o 空格w o r l d

0 1 2 3 4 5 6 7 8 9 10

第一次查找,i值指向了空格即i=5,传过来的索引j指向h,即索引为0,那么结果j应该指向空格即j=5,表达式为j= j+ (i-(e的索引)1 + 1(数量差一)) = j+ i。主程序代码是:C语言进阶:[14]统计单词个数

主程序主要是调用单词查找函数,每次更新索引值,直到字符串查找完毕。

结果如下:C语言进阶:[14]统计单词个数

该程序的缺点是没有统计单词的开始和结束位置。

  • 怎么治疗暗疮
  • 详解真正的军用夜视仪指的是什么
  • 喝铁观音的好处
  • 如何采用Python打印出乘法表for与print
  • Python教程 打印九九乘法表
  • 热门搜索
    海边旅游 景德镇旅游 北海旅游 新加坡旅游攻略 湖北旅游 俄罗斯旅游 旅游攻略 南昌旅游景点 漠河旅游 普陀山旅游攻略