C++ do...while 循环与示例
什么是do-while循环?
do-while 循环多次迭代 C++ 程序的一部分。在 do-while 循环中,在循环底部添加测试表达式。循环体位于测试表达式之前。这就是为什么循环体必须执行一次,即使在第一次测试中测试表达式的计算结果为 false。
在本 C++ 教程中,您将学习:
- 什么是do-while循环?
- 何时使用 do-while 循环?
- 语法
- do-while 循环如何工作?
- 示例 1
- 示例 2
- 嵌套 Do While 循环
- 语法
- While 循环的嵌套是如何工作的
- 示例
何时使用 do-while 循环?
当迭代次数不固定时应该使用do-while循环,并且循环必须至少执行一次。 C++ 编译器在评估条件之前首先执行循环体。这意味着循环必须返回结果。即使在第一次评估时测试条件评估为假,情况也是如此。由于循环体已经执行完毕,所以必须返回结果。
语法
C++ do while循环的基本语法如下:
do{ //code }while(condition);
条件是测试表达式。循环必须为真才能执行。 { 和 } 标记 do while 循环的主体。它出现在条件之前。因此,它在条件之前执行。
do-while 循环如何工作?
<中心>
<图> 图>
流程图说明:
- do while 循环的开始。
- do while 循环的主体。
- 要评估的测试表达式或条件。
- 如果测试表达式为真,则 C++ 编译器执行 do while 循环体。
- 如果测试表达式为假,C++ 编译器执行循环体之后的语句。
- 循环体之后的语句。
示例 1
#include <iostream> using namespace std; int main() { // Local variable int x = 1; do { cout << "X is: " << x << endl; x = x + 1; } while (x < 5); return 0; }
输出:
下面是代码截图:
代码说明:
- 在我们的代码中包含 iostream 头文件。它将允许我们读取和写入控制台。
- 包含 std 命名空间,以便在不调用它的情况下使用它的类和函数。
- 调用 main() 函数,在其中添加程序的逻辑。 { 标记 main() 函数主体的开始。
- 评论。 C++ 编译器会跳过这个。
- 声明一个整数变量 x 并将其赋值为 1。
- 创建一个 do-while 循环。 { 标记循环体的开始。
- 在控制台上打印变量 x 的值以及其他文本。 endl 是一个 C++ 关键字,意思是结束行。
- 每次迭代后将 x 的值增加 1。
- 循环体结束。测试表达式已添加到循环体的末尾。它测试 x 的值是否小于 5。
- 如果程序运行良好,main() 函数应该返回一个值。
- main() 函数主体的结尾。
示例 2
#include <iostream> using namespace std; int main() { int num, sum = 0; do { cout << "Enter a number: "; cin >> num; sum += num; } while (num != 0); cout << "Sum is " << sum; return 0; }
输出:
下面是代码截图:
代码说明:
- 在我们的代码中包含 iostream 头文件。它将允许我们读取和写入控制台。
- 包含 std 命名空间,以便在不调用它的情况下使用它的类和函数。
- 调用 main() 函数,在其中添加程序的逻辑。
- { 标记 main() 函数体的开始。
- 声明两个整数变量 num 和 sum。变量 sum 已初始化为 0。
- 创建一个 do-while 循环。 { 标记循环体的开始。
- 在控制台上打印文本“输入数字:”。
- 从控制台读取用户输入并将值存储在变量 num 中。 cin(控制台输入)是一个读取用户输入的函数。
- 将 num 的值与 sum 的值相加,并将结果存储在变量 sum 中。
- } 标记循环体的结束。测试表达式已添加到循环体的末尾。它测试用户输入的值是否不为 0。 !=不等于运算符。如果用户输入 0,则循环应终止。
- 在控制台上与其他文本一起打印变量 sum 的值。
- 如果程序运行良好,main() 函数应该返回一个值。
- main() 函数主体的结尾。
嵌套 Do While 循环
在 C++ 中,我们可以在另一个 do-whole 循环中创建一个 do-while 循环。这会导致嵌套的 do-while 循环。
语法
do{ statement(s) do{ statement(s) }while(condition); statement(s) }while(condition);
第一个 do 语句表示外部 do-while 循环的 do 部分。
第二个 do 语句表示内部 do-while 循环的 do 部分。
第一个while语句表示内部循环的测试条件。
第二个while语句表示外循环的测试条件。
While 循环是如何工作的
嵌套 do while 循环的工作原理如下:
第 1 步: 初始化先执行一次。
第 2 步: 语句(do)执行一次。
第 3 步: 测试表达式为流控求值。
第 4 步: 如果为真,则执行内循环。
第 5 步: 更新语句已更新。
第 6 步: 进程重复运行,直到测试表达式变为假。
第 7 步: 当测试表达式为假时,退出内循环,控制跳转到外循环。
第 8 步: 再次评估测试条件。
第 9 步: 如果为真,则执行语句以返回假。
第 10 步: 循环停止执行,控制跳转到循环后的语句。
示例
#include <iostream> using namespace std; int main() { int a = 1; do { int b = 1; do { cout << a << "\n"; b++; } while (b <= 3); a++; } while (a <= 3); }
输出:
下面是代码截图:
代码说明:
- 在我们的代码中包含 iostream 头文件。它将允许我们读取和写入控制台。
- 包含 std 命名空间,以便在不调用它的情况下使用它的类和函数。
- 调用 main() 函数,在其中添加程序的逻辑。 { 标记 main() 函数主体的开始。
- 声明一个整数变量 a 并将其赋值为 1。
- 创建外部 do-while 循环。 { 标记外部循环体的开始。
- 声明一个整数变量 b 并将其赋值为 1。
- 创建内部 do-while 循环。 { 标记内部循环体的开始。
- 在控制台上打印变量 a 的值。 “\n”是一个换行符,将鼠标光标移动到下一行。
- 每次迭代后将 b 的值增加 1。
- 内循环体的结束。测试表达式已添加到循环体的末尾。它测试 b 的值是否小于或等于 5。
- 每次迭代后将 a 的值增加 1。
- 外循环体的结束。测试表达式已添加到循环体的末尾。它测试 a 的值是否小于或等于 3。
- main() 函数主体的结尾。
总结
- do-while 循环多次运行一段代码。
- 在迭代次数不固定时使用。
- 在 do-while 循环中,循环体位于测试表达式之前。
- 循环体至少执行一次,即使测试表达式为假。
- 当迭代次数不固定时,应使用此循环。
- 只要条件为真,Do while 循环可以运行任意次数。
- 条件在每次迭代后评估一次。
- 条件评估的结果决定了要采取的行动。
- 如果条件为真,则循环执行主体。
- 循环的执行立即停止条件评估为假。
- 由于 do while 循环体已经被执行,它必须返回结果。
C语言