我知道这可能真的很简单,但我就是不能让它工作。我正在尝试用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);

10-06 16:04