编写一个C语言程序,如何使用if语句统计输入字符串中英文字母、空格、数字和其它字符的具体数量?
时间: 2024-11-15 09:23:15 浏览: 13
在C语言中,编写一个程序来统计输入字符串中各个字符类型的数量,可以使用`if...else if...else`结构配合`isalpha()`、`isspace()`、`isdigit()`函数以及一些基本计数操作。以下是一个简单的示例:
```c
#include <stdio.h>
#include <ctype.h>
int main() {
char input[100];
int alpha_count = 0, space_count = 0, digit_count = 0, other_count = 0;
printf("Enter a string: ");
fgets(input, sizeof(input), stdin); // Read input with newline character
for (int i = 0; input[i] != '\0'; i++) { // Iterate through the string
if (isalpha(input[i])) { // Check if character is an alphabet
alpha_count++;
} else if (isspace(input[i])) { // Check if character is a space
space_count++;
} else if (isdigit(input[i])) { // Check if character is a digit
digit_count++;
} else { // Other characters (including punctuation or special symbols)
other_count++;
}
}
printf("Number of alphabets: %d\n", alpha_count);
printf("Number of spaces: %d\n", space_count);
printf("Number of digits: %d\n", digit_count);
printf("Number of other characters: %d\n", other_count);
return 0;
}
```
在这个程序中,我们首先定义了一个数组来存储用户输入,然后使用`isalpha()`检查是否为字母,`isspace()`检查是否为空格,`isdigit()`检查是否为数字。如果都不是,那么它会被归类到"其他"类别。最后,我们打印出每个类别字符的数量。
阅读全文