.编写一个C语言程序,输入一个字符串,统计其中的字母、数字、空格和其他字符的个数并输出
时间: 2024-03-07 20:49:35 浏览: 82
C语言统计字符串中字母、数字、空格和其他字符的个数
好的,以下是您需要的C语言程序:
```c
#include<stdio.h>
int main(){
char str[100];
int i, alphabet, digit, space, other;
alphabet = digit = space = other = 0;
printf("请输入一个字符串:");
fgets(str, 100, stdin);
for(i=0; str[i]!='\0'; i++){
if((str[i]>='a' && str[i]<='z') || (str[i]>='A' && str[i]<='Z'))
alphabet++;
else if(str[i]>='0' && str[i]<='9')
digit++;
else if(str[i]==' ')
space++;
else
other++;
}
printf("字母个数:%d\n", alphabet);
printf("数字个数:%d\n", digit);
printf("空格个数:%d\n", space);
printf("其他字符个数:%d\n", other);
return 0;
}
```
程序说明:
1. 首先定义了一个字符数组 `str`,用于存储输入的字符串。
2. 定义了四个整型变量 `alphabet`、`digit`、`space` 和 `other`,用于统计字母、数字、空格和其他字符的个数。
3. 调用 `fgets()` 函数从标准输入流中读取字符串,并将其存储到 `str` 数组中。
4. 使用 `for` 循环遍历字符串中的每一个字符,判断其类型,并对相应的计数器进行加一操作。
5. 最后输出各种字符的个数。
注意:由于输入的字符串可能包含空格,因此不能使用 `scanf()` 函数直接读取字符串,需要使用 `fgets()` 函数读取。
阅读全文