【C语言】输入一行字符,统计其中字母、数字、空格和其他字符的个数
1、看到网上都是用指针完成的,其实我感觉没必要使用指针,用数组和循环就能实现,这样也能让入门者看懂和练习,以下代码仅供参考,欢迎自取。
2、代码说明:scanf_s是因为作者使用Visual2019,使用Scanf函数会报错
#include <stdio.h>
void main()
{
char a[50];
int n, i = 0;
int zimu1 = 0, zimu2 = 0, shuzi = 0,kongge=0,other=0;
///输入字数/
printf("请输入字数:");
scanf_s("%d",&n);
///输入内容/
printf("请输入内容:");
while(i<=n)
{
scanf_s("%c",&a[i]);
i++;
}
///检 测/
for (int i = 1; i <= n; i++)
{
if (a[i]>='a' && a[i] <= 'z')
{
zimu1++;
}
else if (a[i] >= 'A' && a[i] <= 'Z')
{
zimu2++;
}
else if (a[i] >= '0' && a[i] <= '9')
{
shuzi++;
}
else if (a[i] ==' ')
{
kongge++;
}
else
{
other++;
}
}
printf("有%d个字母\n", zimu1+zimu2);
printf("有%d个数字\n", shuzi);
printf("有%d个空格\n", kongge);
printf("有%d个其他字符\n", other);
}
结果: