统计输入的字符串各个字符类型个数
Posted 穿迷彩服的鲨鱼
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了统计输入的字符串各个字符类型个数相关的知识,希望对你有一定的参考价值。
前言
在控制台输入一串字符,统计大写字符个数,小写字符个数,数字字符个数,其他字符
一、示例
1.示例
二、代码解析
1.开始统计(while循环)
代码如下(示例):
#include<stdio.h>
int main()
{
char c[128];
int lower = 0, upper = 0, number = 0, other = 0;
scanf("%s",c);
int i = 0;
while (c[i]!='\\0')
{
if (c[i]>='a'&&c[i]<='z')
{
lower++;
}
else if (c[i] >= 'A' && c[i] <= 'Z')
{
upper++;
}
else if (c[i] >= '0' && c[i] <= '9')
{
number++;
}
else
{
other++;
}
i++;
}
printf("小写字符个数:%d;\\n大写字符个数:%d;\\n数字字符个数:%d;\\n其他字符个数:%d;\\n",lower,upper,number,other);
}
2.使用VS编写上述代码时scanf不可用问题
#include<stdio.h>
int main()
{
char c[128];//定义数组大小
int lower = 0, upper = 0, number = 0, other = 0;
scanf_s("%s",c,128);//Vs不支持scanf,但是提供了scanf_s,在使用scanf_s时,输入字符串时必须指定字符串大小
int i = 0;
while (c[i]!='\\0')
{
if (c[i]>='a'&&c[i]<='z')//如果时小写字符
{
lower++;//累加
}
else if (c[i] >= 'A' && c[i] <= 'Z')//如果时小写字符
{
upper++;//累加
}
else if (c[i] >= '0' && c[i] <= '9')//如果时小写字符
{
number++;//累加
}
else//其他字符
{
other++;//累加
}
i++;
}
printf("小写字符个数:%d;\\n大写字符个数:%d;\\n数字字符个数:%d;\\n其他字符个数:%d\\n",lower,upper,number,other);
}
3结果
总结
以上是关于统计输入的字符串各个字符类型个数的主要内容,如果未能解决你的问题,请参考以下文章
用C语言编写一个程序,输入一个字符串,统计其中各个字符出现的次数
用C语言编程:在显示器上输入一段字符串,并统计出现字符的个数和各个字符出现的次数