对输入的非负整数到变量n, 以及输 入一个0到9中的数至变量d然后统计 n的各位数字中值为d的个数num, 并求n中各位数字中的最小值m。C语 言
时间: 2024-12-02 10:20:07 浏览: 19
在C语言中,你可以通过循环遍历每一位数字,并检查它是否等于给定的目标数字`d`,来实现这个功能。下面是一个简单的函数示例,用于计算满足条件的数字个数`num`以及找到最小值`m`:
```c
#include <stdio.h>
int count_and_min(int n, int d) {
int num = 0; // 统计值为d的位数
int m = n; // 初始设置m为n,用于记录最小值
while (n > 0) {
int digit = n % 10; // 取出当前位数字
if (digit == d) {
num++; // 如果等于d,计数加一
}
if (digit < m) { // 比较当前位数字是否小于已知最小值
m = digit;
}
n /= 10; // 移除最低位,继续处理下一位
}
return num, m;
}
int main() {
int n, d;
printf("请输入一个非负整数n: ");
scanf("%d", &n);
printf("请输入一个0到9的数字d: ");
scanf("%d", &d);
int num, min;
num, min = count_and_min(n, d);
printf("n中有%d位的值为%d。\n", num, d);
printf("n中的最小值是%d。\n", min);
return 0;
}
```
在这个程序中,`count_and_min`函数接收两个参数,返回两个结果:`num`表示值为`d`的位数,`m`表示n中的最小值。用户在`main`函数中提供输入,然后调用该函数。
阅读全文