C语言统计一行字符中的英文字母、空格、数字和其他字符的个数

【思路】这是一个关于字符处理的问题,首先可以定义一个字符变量ch,利用getchar()函数把用户从键盘输入的字符逐个接收,存储在ch中,然后对 ch进行判断分类。当读取的字符不是换行符时重复执行循环体,直到遇到换行符为止。while语句的条件表达式可以 写成"ch!='\n'"。

【程序代码如下】

#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[]) {
	char ch;
	int letter = 0,digital = 0,space = 0,other = 0;
	while((ch = getchar())!= '\n')     //接收从键盘输入的字符,并判断是否为换行符,遇到换行符则停止循环。 
	{
		if( ch >= 'A' && ch <= 'Z' || ch >= 'a' && ch <= 'z' ) //判断是否为字母 
				    letter++;
		else if(ch >= '0' && ch <= '9' )    //判断是否为数字 
		     digital++;
		else if(ch == ' ')
		     space++;                 //判断是否为空格 
		else 
		     other++;
     }    
     printf("字母=%d,数字=%d,空格=%d,其它字符=%d\n",letter,digital,space,other);
	return 0;
}

【运行结果如下】

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值