请用C语言写一段程序:输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的个数
时间: 2023-05-15 08:05:01 浏览: 164
好的,以下是程序的代码:
```c
#include <stdio.h>
#include <ctype.h>
int main() {
char str[100];
int i, letters = 0, spaces = 0, digits = 0, others = 0;
printf("请输入一行字符:\n");
fgets(str, sizeof(str), stdin);
for (i = 0; str[i] != '\0'; i++) {
if (isalpha(str[i])) {
letters++;
} else if (isspace(str[i])) {
spaces++;
} else if (isdigit(str[i])) {
digits++;
} else {
others++;
}
}
printf("英文字母个数:%d\n", letters);
printf("空格个数:%d\n", spaces);
printf("数字个数:%d\n", digits);
printf("其他字符个数:%d\n", others);
return 0;
}
```
希望这个程序能够帮到您!
相关问题
用C语言写一个代码:输入一行字符,分别统计出其中的英文字母、空格、数字和其它字符的个数。
当然可以!下面是一个用C语言编写的代码,可以实现输入一行字符,并统计其中的英文字母、空格、数字和其他字符的个数:
```c
#include <stdio.h>
int main() {
char line[100];
int i, alphabets, digits, spaces, others;
alphabets = digits = spaces = others = 0;
printf("请输入一行字符:");
fgets(line, sizeof(line), stdin);
for (i = 0; line[i] != '\0'; i++) {
if ((line[i] >= 'a' && line[i] <= 'z') || (line[i] >= 'A' && line[i] <= 'Z')) {
alphabets++;
} else if (line[i] >= '0' && line[i] <= '9') {
digits++;
} else if (line[i] == ' ') {
spaces++;
} else {
others++;
}
}
printf("英文字母个数:%d\n", alphabets);
printf("数字个数:%d\n", digits);
printf("空格个数:%d\n", spaces);
printf("其他字符个数:%d\n", others);
return 0;
}
```
C语言编写程序:输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的个数
以下是统计字符个数的 C 语言代码:
```c
#include <stdio.h>
#include <ctype.h>
int main() {
char line[100];
int i, alphabet = 0, digit = 0, space = 0, other = 0;
printf("请输入一行字符: ");
fgets(line, sizeof(line), stdin);
for (i = 0; line[i] != '\0'; ++i) {
if (isalpha(line[i])) {
++alphabet;
}
else if (isdigit(line[i])) {
++digit;
}
else if (isspace(line[i])) {
++space;
}
else {
++other;
}
}
printf("英文字母个数: %d\n", alphabet);
printf("数字个数: %d\n", digit);
printf("空格个数: %d\n", space);
printf("其他字符个数: %d\n", other);
return 0;
}
```
这段代码使用了 for 循环遍历输入的字符数组,对每个字符进行判断,若是英文字母则 alphabet++,若是数字则 digit++,若是空格则 space++,其他字符则 other++。最终输出各个字符的个数。注意,需要包含头文件 ctype.h 才能使用 isalpha 和 isdigit 函数。
阅读全文