第一种方法太费时,若是长篇大论,那几乎是不可能统计的;而第二种方法不太准确。这就给我们留下了一个问题:如何又快、又准确地统计一篇英文文章中的单词数?算法思想要解决这个问题,最自然的算法是,读取文章的所有内容,然后一个单词一个单词地统计,然而,我们在这里遇到了一个难题:程序看不懂英文,如何知道什么是一个单词,什么不是一个单词呢?似乎在这里遇到了障碍,可是,如果换个角度思考问题,也许会柳暗花明又一村:文章中的单词都是用空格间隔开的,换句话说,单词数=空格数+1。
程序不认识单词,但是程序认识空格啊!这样,整个问题实际上转换成了统计文章中的空格数。
有了这样的问题转换思路,整个问题就简单多了。可以先按照这个思路自己实现,也可以直接看下面的代码实现。程序代码
#include <stdio.h>int main(){ printf("输入一行字符:\n"); char ch; int i,count=0,word=0; while((ch=getchar())!='\n') if(ch==' ') word=0; else if(word==0) { word=1; count++; } printf("总共有 %d 个单词\n",count); return 0;}调试运行结果根据程序提示,分别输入“I love China”和“I love Xichang College”两个字符串代码, 程序统计单词后输出结果分别如下所示:
输入一行字符:
I love China
总共有 3 个单词
输入一行字符:
I love Xichang College
总共有 4 个单词
以上是内存溢出为你收集整理的C语言统计单词个数,单词个数算法全部内容,希望文章能够帮你解决C语言统计单词个数,单词个数算法所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)