输入一行字符(以换行符结束),分别统计出其中英文字母、空格、数字、其他字符的个数,以及总字符数(不含换行符)
时间: 2024-03-22 21:33:27 浏览: 112
以下是两种C语言统计字符的例子:
1.方法一:常规计算
```c
#include <stdio.h>
int main(){
char c;
int letters=0,space=0,digit=0,other=0,total=0;
printf("请输入一行字符:\n");
while((c=getchar())!='\n'){
if(c>='a'&&c<='z'||c>='A'&&c<='Z') letters++;
else if(c==' ') space++;
else if(c>='0'&&c<='9') digit++;
else other++;
total++;
}
printf("字母数:%d\n空格数:%d\n数字数:%d\n其他字符数:%d\n总字符数:%d",letters,space,digit,other,total);
return 0;
}
```
2.方法二:使用数组
```c
#include <stdio.h>
#include <string.h>
int main(){
char str[100];
int letters=0,space=0,digit=0,other=0,total=0,i;
printf("请输入一行字符:\n");
fgets(str,100,stdin);
for(i=0;i<strlen(str);i++){
if(str[i]>='a'&&str[i]<='z'||str[i]>='A'&&str[i]<='Z') letters++;
else if(str[i]==' ') space++;
else if(str[i]>='0'&&str[i]<='9') digit++;
else other++;
total++;
}
printf("字母数:%d\n空格数:%d\n数字数:%d\n其他字符数:%d\n总字符数:%d",letters,space,digit,other,total-1);
return 0;
}
```
阅读全文