while 和 do while 都是 C 语言中的循环语句,它们的主要区别在于循环体执行的顺序。
while 循环首先检查循环条件,只有当条件为真时才执行循环体。因此,如果条件一开始就为假,那么循环体将永远不会执行。而如果条件一直为真,那么循环将一直执行下去。
while: 你欠我钱,我走路上,前面一人,我先看清楚这个人是不是你,不是就不打。
do while: 你欠我钱,我走路上,前面一人,我不管这个人是不是你,先打再说。
下面是一个 while 循环的实例程序:
#include <stdio.h>
int main() {
int i = 0;
while (i < 5) {
printf("i = %d\n", i);
i++;
}
return 0;
}
输出结果为:
i = 0
i = 1
i = 2
i = 3
i = 4
do while 循环与 while 循环的主要区别在于它们执行循环体的顺序。do while 循环首先执行循环体,然后检查循环条件。因此,即使条件一开始就为假,循环体也会至少执行一次。
下面是一个 do while 循环的实例程序:
#include <stdio.h>
int main() {
int i = 0;
do {
printf("i = %d\n", i);
i++;
} while (i < 5);
return 0;
}
输出结果为:
i = 0
i = 1
i = 2
i = 3
i = 4
可以看到,即使 i 的初始值为 0,do while 循环仍然执行了 5 次循环体,因为它们先执行了循环体,然后再检查循环条件。
总的来说,while 循环适用于在循环之前检查条件,而 do while 循环适用于至少执行一次循环体,不管条件是否成立。