c语言,输入一个字符串(仅有字母和数字构成),统计出其中数字字符的个数
时间: 2024-12-13 19:17:49 浏览: 18
在C语言中,你可以使用标准库函数`ctype.h`中的`isdigit()`函数来判断一个字符是否为数字,然后遍历整个字符串进行计数。以下是一个简单的示例程序:
```c
#include <stdio.h>
#include <ctype.h>
#include <string.h>
int count_digits(char str[]) {
int count = 0;
for (int i = 0; str[i] != '\0'; i++) { // 遍历字符串直到遇到结尾'\0'
if (isdigit(str[i])) { // 判断字符是否为数字
count++; // 如果是数字,计数加一
}
}
return count;
}
int main() {
char input[100];
printf("请输入一个只包含字母和数字的字符串:");
fgets(input, sizeof(input), stdin); // 从标准输入读取字符串
// 移除fgets添加的换行符
size_t len = strlen(input);
if (input[len - 1] == '\n') {
input[len - 1] = '\0';
}
int digit_count = count_digits(input);
printf("字符串中共有 %d 个数字字符。\n", digit_count);
return 0;
}
```
在这个程序中,`count_digits`函数接受一个字符串作为参数,并返回其中数字字符的数量。`main`函数部分则用于获取用户输入并调用这个函数。
阅读全文