用C语言输入一行字符,分别统计出其中英文字母、数字和其它字符的个数,采用指针操作完成上述工作
时间: 2024-02-27 09:56:17 浏览: 53
输入一行字符,分别统计出其中的英文字母、空格、数字、和其他字符个数
好的,以下是一份用 C 语言实现统计英文字母、数字和其他字符个数的代码示例:
```c
#include <stdio.h>
void count(char *str, int *alpha, int *digit, int *other)
{
while (*str != '\0') {
if ((*str >= 'a' && *str <= 'z') || (*str >= 'A' && *str <= 'Z')) {
(*alpha)++;
} else if (*str >= '0' && *str <= '9') {
(*digit)++;
} else {
(*other)++;
}
str++;
}
}
int main()
{
char str[100];
int alpha = 0, digit = 0, other = 0;
printf("Please enter a string: ");
fgets(str, 100, stdin);
count(str, &alpha, &digit, &other);
printf("Alphabets: %d\n", alpha);
printf("Digits: %d\n", digit);
printf("Other characters: %d\n", other);
return 0;
}
```
在这个代码中,我们定义了一个自定义函数 `count`,该函数接收一个字符串指针 `str`,以及三个整型指针 `alpha`、`digit` 和 `other` 作为参数。函数内部使用一个循环遍历字符串中的每一个字符,如果是英文字母则将 `alpha` 指针指向的整型变量加一,如果是数字则将 `digit` 指针指向的整型变量加一,否则将 `other` 指针指向的整型变量加一。
在 `main` 函数中,我们声明一个字符串变量 `str`,并使用 `fgets` 函数从标准输入中读取一行字符串。然后我们调用 `count` 函数统计其中英文字母、数字和其他字符的个数,并将结果存储在 `alpha`、`digit` 和 `other` 变量中。最后我们输出统计结果。
阅读全文