c语言判断从零开始到n带有2.0.1.9的数字之和
时间: 2024-10-15 18:21:28 浏览: 1
在C语言中,如果需要计算从0到n之间所有数字(包括0和n),其中包含2、0、1、9这四个特定数字的和,你可以编写一个循环结构来遍历这个范围,并检查每个数是否包含这四个数字。下面是一个简单的示例代码:
```c
#include <stdio.h>
// 函数定义,检查数字是否包含2、0、1、9
int contains_digits(int num) {
while (num > 0) {
int digit = num % 10;
if (digit == 2 || digit == 0 || digit == 1 || digit == 9) {
return 1; // 包含任意一个目标数字返回1
}
num /= 10;
}
return 0; // 如果没找到全部目标数字则返回0
}
// 计算并打印和
int main() {
int n, sum = 0;
printf("请输入一个正整数n: ");
scanf("%d", &n);
for (int i = 0; i <= n; i++) {
if (contains_digits(i)) {
sum += i;
}
}
printf("从0到%d,含有2、0、1、9的数字之和为: %d\n", n, sum);
return 0;
}
```
在这个程序中,`contains_digits()`函数用于检查一个数字是否包含目标数字,而主函数通过循环将满足条件的数字累加到`sum`变量中。
阅读全文