C语言字符串只统计字母和空格的个数

我用C语言实现给出一个思路对於题主的问题,可以考虑使用getchar()函数来实现具体的步骤是这样的:

  1. 使用getchar()函数从stdin,更准确的说是从缓冲区中逐个读入字符;
  2. 判断当前读入嘚字符属于数字还是字母还是空白字符还是其他字符;
  3. 根据当前读入的字符类型,使得对应的字符计数器自增1;
  4. 如果读取到EOF则表明读取唍毕。

上述步骤中有几个技术点需要你去了解的:getchar()函数的使用,缓冲区的概念标准输入stdin的概念,输入结尾标记EOF的概念关于这些概念,我在另一个回答中已经阐明有兴趣的可以参考我的这个回答:

回到当前问题中来,按照上述思路可以初步拟定一份代码如下:

微信: C語言编程技术分享

代码不长,应该比较好理解换行符'\n'、空格符' '、制表符'\t'都算作空白字符。

但是对于统计中文字符代码还有所欠缺,不過对于统计一般的字符应该绰绰有余了我运行了下,结果如下:

最后我是以CTRL+Z来模拟键盘输入结束!

题主有兴趣可以关注我的微信公众號“C语言编程技术分享”或者扫描我头像关注我,会有C语言编程相关文章分享!

我要回帖

 

随机推荐