用c语言从键盘输入一个字符串,统计其中字母的个数,数字字符的个数,空格的个数。其他字符的个数
时间: 2023-09-20 13:05:57 浏览: 106
### 回答1:
可以使用C语言中的字符处理函数isalpha、isdigit、isspace来判断字符的类型,然后统计出现次数即可。具体代码如下:
```c
#include <stdio.h>
#include <ctype.h>
int main() {
char str[100];
int i, letters = 0, digits = 0, spaces = 0, others = 0;
printf("请输入一个字符串:");
gets(str);
for (i = 0; str[i] != '\0'; i++) {
if (isalpha(str[i]))
letters++;
else if (isdigit(str[i]))
digits++;
else if (isspace(str[i]))
spaces++;
else
others++;
}
printf("字母个数:%d\n", letters);
printf("数字个数:%d\n", digits);
printf("空格个数:%d\n", spaces);
printf("其他字符个数:%d\n", others);
return 0;
}
```
需要注意的是,gets函数存在安全问题,因此可以使用fgets函数来代替。另外,上述代码没有考虑中文字符的情况,如果需要支持中文字符,可以使用wchar_t类型和相关的宽字符处理函数。
### 回答2:
可以使用C语言中的字符数组来读取键盘输入的字符串,并通过遍历字符串数组的每个元素,判断其字符类型并进行统计。
```c
#include <stdio.h>
#include <ctype.h>
int main() {
char str[100];
int letter_count = 0;
int digit_count = 0;
int space_count = 0;
int other_count = 0;
printf("请输入一个字符串:\n");
fgets(str, sizeof(str), stdin);
for (int i = 0; str[i] != '\0'; i++) {
if (isalpha(str[i])) {
letter_count++;
} else if (isdigit(str[i])) {
digit_count++;
} else if (isspace(str[i])) {
space_count++;
} else {
other_count++;
}
}
printf("字母个数:%d\n", letter_count);
printf("数字字符个数:%d\n", digit_count);
printf("空格个数:%d\n", space_count);
printf("其他字符个数:%d\n", other_count);
return 0;
}
```
运行程序后,会提示输入一个字符串,并统计其中的字母个数,数字字符个数,空格个数和其他字符个数。例如,输入字符串 "Hello, 123 World!",则输出结果为:
```
字母个数:10
数字字符个数:3
空格个数:2
其他字符个数:2
```
### 回答3:
您好!以下是用C语言编写的程序,可以实现从键盘输入一个字符串,统计其中字母的个数,数字字符的个数,空格的个数以及其他字符的个数。
```c
#include <stdio.h>
int main() {
char str[100];
int i, alphabets = 0, digits = 0, spaces = 0, others = 0;
printf("请输入一个字符串:");
gets(str);
for(i = 0; str[i] != '\0'; i++) {
if((str[i] >= 'a' && str[i] <= 'z') || (str[i] >= 'A' && str[i] <= 'Z')) {
alphabets++;
}
else if(str[i] >= '0' && str[i] <= '9') {
digits++;
}
else if(str[i] == ' ') {
spaces++;
}
else {
others++;
}
}
printf("\n字母的个数是:%d", alphabets);
printf("\n数字字符的个数是:%d", digits);
printf("\n空格的个数是:%d", spaces);
printf("\n其他字符的个数是:%d", others);
return 0;
}
```
您可以通过按下回车键来输入字符串,然后程序会逐个检查字符串中的每个字符,统计字母、数字字符、空格和其他字符的数量,并将其输出到屏幕上。如果您有任何其他问题,请随时提问!
阅读全文