代码如下:
#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