C语言 | 统计字符中英文 空格 数字和其他

举报
C语言入门到精通 发表于 2021/02/10 00:25:56 2021/02/10
【摘要】 例52:输入一行字符,C语言编程分别统计出其中英文字母、空格、数字和其他字符的个数。解析:首先要手动录入信息,但是scanf函数不记录空格,所以首先键盘录入要用getchar函数。源代码演示:#include<stdio.h>//头文件 int main()//主函数 { char input_Character;//定义字符变量 int letter...

例52:输入一行字符,C语言编程分别统计出其中英文字母、空格、数字和其他字符的个数。

解析:首先要手动录入信息,但是scanf函数不记录空格,所以首先键盘录入要用getchar函数。

源代码演示:

#include<stdio.h>//头文件 
int main()//主函数 
{
  char input_Character;//定义字符变量 
  int letters=0,space=0,digit=0,other=0;//定义整型变量且赋初值 
  printf("请输入一行字符:");//提示语句 
  while((input_Character=getchar())!='\n') //getchar函数录入,可以把空格也算做字符 
  { if(input_Character>'a'&&input_Character<'z'||input_Character>'A'&&input_Character<'Z')//如果是字母 
 { letters++;//letters加1 
 } else if(input_Character==' ')//如果是空格 
 { space++;//sapce加1 
 } else if(input_Character>='0'&&input_Character<='9')//如果是数字 
 { digit++;//digit加1 
 } else { other++;//other加1 
 }
  }
  printf("字母:%d个\n",letters);//输出字母个数 
  printf("空格:%d个\n",space);//输出空格个数 
  printf("数字:%d个\n",digit);//输出数字个数 
  printf("其他字符:%d个\n",other);//输出其他字符个数 
  return 0;//主函数返回 
}

编译运行结果如下:

请输入一行字符:kk 34!
字母:2
格:1
数字:2
其他字符:1

--------------------------------
Process exited after 15.16 seconds with return value 0
请按任意键继续. . .

小林盲猜,有读者不理解这行代码:

while((input_Character=getchar())!='\n')

打过ACM的读者应该明白,小林在这里解释一下,这句代码翻译成中文的意思是,当输入的字符不少换行时,也就是,键盘输入字符一直没有点击enter键换行。

C语言 | 统计字符中英文 空格 数字 mp.weixin.qq.com图标

文章来源: zhuanlan.zhihu.com,作者:小林C语言,版权归原作者所有,如需转载,请联系作者。

原文链接:zhuanlan.zhihu.com/p/341851216

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。