码迷,mamicode.com
首页 > 其他好文 > 详细

WordCount

时间:2017-09-25 00:48:58      阅读:143      评论:0      收藏:0      [点我收藏+]

标签:换行   单词   ascii   用户   https   char   空格   字符变量   etc   

经过老师及同学们在课堂上的点拨,博主本人亲自动手,发愤图强,纯手工打造了这款代码,绝无半点抄袭之言。 在代码中,我定义了字符数组 filename【20】、文件指针FILE *fp 、字符变量 charNum 、单词变量 wordNum 、行数变量 lineNum 以及一些 char 变量。同时定义了三个函数CharCount() 、WordCount() 、LineCount() 分别用来统计字符数、单词数和行数。用户在输入文件地址后,会出现操作选项,其中 ‘c’ 代表统计字符数, ‘w’ 代表统计单词数,‘ l ’代表统计行数。 大部分文件都是用键盘输入,并以ASCII码形式存储在存储器中,所以在 CharCount() 中,除了文件结束符EOF外,所有字符都会被统计,不仅仅是a~z、A~Z的英文字母,还包括空格符、换行符、‘;’、‘ “ ” ’、‘ . ’、‘ 、’ 等等。因此CharCount()比较简单,只需统计 ch = fgetc(arg) 的执行次数即可。 在WordCount() 中,我定义了ch1和ch2两个字符变量,ch2 = ch1 ; ch1 = fgetc(arg) ; 在实现整个文件遍历的同时,将当前文件指针指向的字符与上一个字符作比较,如果 ch2 是英文字母,而 ch1 是非英文字母,则单词数 wordNum 加一。在文件结尾处,指针指向EOF,所以需要在while()循环后wordnum++. LineCount( ) 则直接查找换行符 ‘ \n ’ 的个数即可,同时在文件EOF后lineNum++。这三个函数在执行时都需执行 rewind(arg)函数,以便将文件指针提前至文件头。 代码地址:https://github.com/xzc1017964340/XANXUS

WordCount

标签:换行   单词   ascii   用户   https   char   空格   字符变量   etc   

原文地址:http://www.cnblogs.com/xzc1017964340/p/7589433.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!