c语言,数组,输入一个字符串,统计其中数字字符出现的次数
时间: 2024-12-17 12:52:33 浏览: 8
在C语言中,你可以通过以下几个步骤来输入一个字符串并统计其中数字字符(0-9)的出现次数:
1. **声明数组和变量**:首先,你需要定义一个动态数组(如`int count[10]`),用于存储每个数字(0-9)的计数。另外,定义一个整型变量`total_count`记录整个字符串中数字字符的总数。
```c
#include <stdio.h>
#include <ctype.h> // 引入ctype.h库,获取isdigit函数
int main() {
char str[100];
int count[10] = {0}; // 初始化所有计数为0
int total_count = 0;
```
2. **输入字符串**:使用`scanf`函数让用户输入字符串,并检查是否结束。
```c
printf("请输入一个字符串: ");
fgets(str, sizeof(str), stdin); // fgets用于读取一行输入直到换行符
str[strlen(str) - 1] = '\0'; // 清除fgets添加的换行符
```
3. **遍历字符串并计数**:遍历字符串中的每一个字符,使用`isdigit`函数判断是否为数字字符,如果是,则相应计数加一。
```c
for (int i = 0; str[i] != '\0'; i++) {
if (isdigit(str[i])) {
count[str[i]-'0']++;
total_count++; // 每次找到数字字符就增加总数
}
}
```
4. **输出结果**:最后,打印出每个数字字符及其出现次数以及总次数。
```c
printf("数字字符及出现次数:\n");
for (int i = 0; i < 10; i++) {
if (count[i]) {
printf("%d: %d\n", i, count[i]);
}
}
printf("总数字字符次数: %d\n", total_count);
return 0;
}
```
阅读全文