先判断还是先执行

10 分钟

两种循环的区别在于"先判断还是先执行":

  • while (条件) {...}:先判断,条件一开始就为假,就一次都不跑(0 次)。
  • do {...} while (条件);:先执行一次,再判断,所以哪怕条件一开始就为假,也至少跑 1 次。
int x = 10;
while (x < 5) cout << "A";       // 条件为假:一次都不打印
do    cout << "B"; while (x < 5); // 先打一个 B 再判断
// 输出:B

给一个开局就是假的条件,while 跑 0 次,do-while 跑 1 次——这是考试里最经典的对比点。

记法:do-while 是"无论如何先做一遍",常用于"至少处理一次、再看要不要继续"的场景,比如先读一个输入再判断是否结束。两个坑:一是 do-whilewhile 后面有个分号 ;,漏了会编译错;二是别把两者混淆,题目问"至少执行几次"时,while 可能是 0、do-while 一定 forwhile 一样都是先判断型。

小纸条

条件一开始就是假,两种循环各跑几次?

登录 后可看答案

先判断还是先执行 · 考级冲刺 · op599 课程