用C语言编写输入一行字符,分别统计出其中英文字母、数字和其它字符的个数,采用指针操作完成上述工作
时间: 2024-02-27 09:56:21 浏览: 58
C语言程序设计-输入一行字符,分别统计出英文大小写字母、空格、数字和其他字符的个数
5星 · 资源好评率100%
好的,下面是C语言代码:
```c
#include <stdio.h>
#include <ctype.h>
void count_chars(char *str, int *letters, int *digits, int *others) {
while (*str != '\0') {
if (isalpha(*str))
(*letters)++;
else if (isdigit(*str))
(*digits)++;
else
(*others)++;
str++;
}
}
int main() {
char str[100];
int letters = 0, digits = 0, others = 0;
printf("请输入一行字符:");
fgets(str, 100, stdin);
count_chars(str, &letters, &digits, &others);
printf("字母个数:%d\n数字个数:%d\n其他字符个数:%d\n", letters, digits, others);
return 0;
}
```
在函数`count_chars`中,使用指针来修改`letters`、`digits`和`others`的值,最终在`main`函数中输出它们的值。注意使用`fgets`函数来读取输入的一行字符,而不是`scanf`,因为`scanf`会在遇到空格或换行符时停止读取。
阅读全文