我知道这可能真的很简单,但我就是不能让它工作。我正在尝试用do/while循环编写一个从15倒数到1的程序。但是,当计数器到达11时,我也不必打印,所以输出看起来像15、13、9、7、5、3、1。我知道我的if语句需要在某个地方使用continue/break,但我不知道如何使它工作。
#include <stdio.h>
#include <stdlib.h>
int main() {
int doWhileCount = 15;
do {
printf("%d\n", doWhileCount);
doWhileCount = doWhileCount -2;
if (doWhileCount == 11) {
continue;
}
} while (doWhileCount >= 1);
}
感谢大家的帮助!(再次为简单的地狱问题道歉)
最佳答案
将if
语句放在print语句之前。否则,您的continue;
不会跳过任何内容。
do {
doWhileCount = doWhileCount -2;
if (doWhileCount == 11) {
continue;
}
printf("%d\n", doWhileCount);
} while (doWhileCount >= 1);
注意,这将要求您首先将
doWhileCount
设置为17
。或者,只使用
if
语句(它不要求您将doWhileCount
设置为17
):do {
if (doWhileCount != 11) {
printf("%d\n", doWhileCount);
}
doWhileCount = doWhileCount -2;
} while (doWhileCount >= 1);