一、do-while循环简介
do-while循环是C++中的一种循环结构,也被称为后测试循环。它先执行循环体中的语句,然后再测试循环条件,如果条件为真,就继续执行循环体,否则跳出循环。do-while循环保证了循环体至少被执行一次。
do { // 循环体语句 } while (条件);
在使用do-while循环时,需要注意循环条件的表达式需要在循环体内部进行修改,否则将会是无限循环。
二、do-while循环示例
下面是一个简单的do-while循环示例,实现输出1到5的数字:
int i = 1; do { cout << i << "" << endl; i++; } while (i <= 5);
循环条件“i <= 5”保证了循环体会被执行5次,在每次循环中i的值都会自增1。
三、与while循环的区别
与while循环相比,do-while循环至少会被执行一次,这是由循环结构决定的。当循环条件一开始就不满足时,while循环是不会进入循环体的,但是do-while循环会执行一次循环体后再退出。
比如下面的示例:
int i = 10; while (i < 5) { cout << i << "" << endl; i++; }
由于循环条件一开始就不成立,所以while循环不会执行,输出结果为空。但是对于do-while循环:
int i = 10; do { cout << i << "" << endl; i++; } while (i < 5);
即使循环条件不成立,该循环也至少会执行一次,因此输出结果为:
10
四、do-while循环适用场景
当我们希望循环体至少被执行一次,并且循环条件在每个循环迭代之后才被测试时,就可以选择使用do-while循环。例如,在读取用户输入时,可能需要至少读取一次用户输入才能得到合法结果:
int num; do { cout << "请输入一个正整数:" << endl; cin >> num; } while (num <= 0);
在上述示例中,当用户输入不为正整数时,循环条件不成立,就会要求用户重新输入,直到输入满足要求为止。
五、总结
do-while循环结构是C++中的一种常见循环结构,它与while循环的区别在于do-while循环保证循环体至少被执行一次。do-while循环主要适用于需要至少执行一次循环体的场景,比如读取用户输入等。
完整示例代码:
#include <iostream> using namespace std; int main() { int i = 1; do { cout << i << "" << endl; i++; } while (i <= 5); int num; do { cout << "请输入一个正整数:" << endl; cin >> num; } while (num <= 0); return 0; }