C++:输入一行字符,分别统计出其中的英文字母、空格、数字和其它字符的个数

代码如下:

#include<iostream>
using namespace std;

int main()
{
	char q;
	int a = 0, b = 0, c = 0, d = 0;
	//a表示英文字母个数,b表示空格个数,c表示数字个数,d表示其他字符个数。
	cout << "请输入一行字符:" ;
	while ((q = getchar()) != '\n')
	{
		if (q >= 'a' && q <= 'z' || q >= 'A' && q <= 'Z')
			a++;
		else if (q == ' ')
			b++;
		else if (q >= '0' && q <= '9')
			c++;
		else
			d++;
	}
	cout << "英文字母个数为" << a << endl;
	cout << "空格个数为" << b << endl;
	cout << "数字个数为" << c << endl;
	cout << "其他字符个数为" <<d<< endl;
	return 0;
}

解释如下:

while ((q = getchar())!= '\n') :这是一个 while 循环,getchar() 函数从标准输入流(通常是键盘)读取一个字符,并将其赋值给变量 q。循环会一直执行,直到读取到换行符 \n 为止。

  • 在循环体中,通过一系列的 if - else if 语句对读取到的字符进行判断:
    • if (q >= 'a' && q <= 'z' || q >= 'A' && q <= 'Z') :如果字符 q 是英文字母(小写字母 a 到 z 或者大写字母 A 到 Z),则将英文字母计数器 a 加 1。
    • else if (q == ' ') :如果字符 q 是空格,则将空格计数器 b 加 1。
    • else if (q >= '0' && q <= '9') :如果字符 q 是数字(0 到 9),则将数字计数器 c 加 1。
    • else :如果字符 q 不属于以上任何一种情况,则将其他字符计数器 d 加 1。(其他字符如逗号等符号)

 

觉得有帮助就给博主点个关注叭~~

有问题的可以私信或者在评论区一起交流

友友们一起加油叭QAQ

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值