3.2.4 do-while循环
do-while循环与while循环的类似之处是只要指定的循环条件为true,循环就继续。主要区别是do-while循环在循环结束时才检查循环条件,这与while循环和for循环相反,后两者在循环开始时检查循环条件。因此,do-while循环语句总是至少执行一次。do-while循环的通用形式如下:
- do
- {
- loop_statements;
- }while(condition);
do-while循环的逻辑如图3-6所示。

可以用do-while循环代替前面程序中的while循环,以计算平均值。
- do
- {
- cout << endl
- << "Enter a value: ";
- cin >> value; // Read a value
- ++i; // Increment count
- sum += value; // Add current input to total
- cout << "Do you want to enter another value (enter y or n) ";
- cin >> indicator; // Read indicator
- } while(('y' == indicator) || ('Y' == indicator));
do-while循环的正确运行不依赖indicator的初始值设定,除此之外,这两种循环之间没有区别。只要是至少想输入一个值-- 就我们所讨论的计算问题而言这是合理的,do-while循环就更合适。