您的位置:首页 > 其它

程序设计思想及范例(2),遍历问题,字符统计问题

2011-11-23 13:30 369 查看
[align=left]在多数的字处理软件中均提供了字符统计功能,下面给出了一个统计字符的简单例子。[/align]
[align=left]例10-4 从键盘读入一段文本,统计其中的英文字母、数字、空格和除此之外的其他字符个数。[/align]
[align=left]定义变量nChar来存储字符的个数,nNum存储数字的个数,nBlank存储空格的个数,nOther存储其他字符的个数。由于不确定字符的个数,必须构建无限循环[/align]
[align=left]while((c=getchar())!=EOF)[/align]
[align=left]直到输入特殊的字符后结束。其中EOF为符号常量,在PC机上通过输入Ctrl+Z组合键来输入此字符。[/align]
[align=left]字符分类统计问题代表了一类信息的分类统计问题,其关键是遍历所有的信息查找所需要的信息,并做出统计,下面的程序统计了从键盘输入的所有英文字母的个数。[/align]
[align=left]while((c=getchar())!=EOF)[/align]
[align=left]{[/align]
[align=left]if((c>='a')&&(c<='z')||(c>='A')&&(c<='Z'))[/align]
[align=left]nChar++;[/align]
[align=left]……[/align]
[align=left]}[/align]
[align=left]程序代码如下:[/align]
[align=left]#include "stdio.h"[/align]
[align=left]void main()[/align]
[align=left]{[/align]
[align=left]unsigned int nChar=0,nNum=0,nBlank=0,nOther=0;[/align]
[align=left]char c;[/align]
[align=left]while((c=getchar())!=EOF)[/align]
[align=left]{[/align]
[align=left]if((c>='a')&&(c<='z')||(c>='A')&&(c<='Z'))[/align]
[align=left]nChar++;[/align]
[align=left]else[/align]
[align=left]{[/align]
[align=left]if((c>='0')&&(c<='9'))[/align]
[align=left]nNum++;[/align]
[align=left]else[/align]
[align=left]{[/align]
[align=left]if(c==' ')[/align]
[align=left]nBlank++;[/align]
[align=left]else[/align]
[align=left]nOther++;[/align]
[align=left]}[/align]
[align=left]}[/align]
[align=left]}[/align]
[align=left]printf("Char=%d\tNum=%d\tBlank=%d\tOther=%d",nChar,nNum,nBlank,nOther);[/align]
[align=left]}[/align]
[align=left]文章出处:http://www.neu.edu.cn/cxsj/pointchart/c10/Page4.html[/align]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: