【发布时间】:2016-12-24 10:06:38
【问题描述】:
用 C 语言编写一个程序,它将采用自然数 n 并输出大于或等于 n 的最小自然数,其所有数字均为十进制偶数。例如,如果n = 16,则应输出20,如果n = 41,则应输出42。
我尝试过的:
#include <stdio.h>
int main(void) {
int n, i, condition = 0;
scanf("%d", &n);
for (i = n; i >= n; i++) {
if (i % 2 == 0) {
i = i / 10;
while (i > 0) {
if (i % 2 == 0) {
i = i / 10;
condition = 1;
} else {
break;
}
}
} else {
condition = 0;
}
if (condition == 1) {
printf("%d", i);
break;
}
}
return 0;
}
为什么这不起作用?
【问题讨论】:
-
使用调试器并单步执行代码以逐行查看它在做什么。
-
我该怎么做?
-
你可以阅读小tuto。这将是一个开始。
-
嗯,第一步是学习使用调试器。如何?同样的方式你会学到很多其他的东西。您进行基础研究 - 互联网搜索显然是第一步。