C++ 使用示例进行 do…while 循环

什么是 do-while 循环?

do-while 循环迭代一部分 C++ 多次执行程序。在 do-while 循环中,测试表达式被添加到循环底部。循环体位于测试表达式之前。这就是为什么循环体必须执行一次,即使测试表达式在第一个测试中计算结果为 false。

何时使用 do-while 循环?

当迭代次数不固定且循环必须至少执行一次时,应使用 do-while 循环。 C++ 编译 在评估条件之前先执行循环体。这意味着循环必须返回结果。即使测试条件在第一次评估时评估为假,情况也是如此。由于循环体已经执行,因此它必须返回结果。

句法

基本语法 C++ do while循环如下:

do{    
//code 
}while(condition);  

条件是测试表达式。它必须为真,循环才会执行。{ 和 } 标记 do while 循环体。它位于条件之前。因此,它在条件之前执行。

do-while 循环如何工作?

Do-While 循环
C++ Do while 流程图

流程图说明:

  1. 开始 do while 循环。
  2. do while 循环的主体。
  3. 要评估的测试表达式或条件。
  4. 如果测试表达式为真,则 C++ 编译器执行了 do while 循环的主体。
  5. 如果测试表达式为假,则 C++ 编译器执行循环体后面的语句。
  6. 循环体之后的语句。

例子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;
}

输出:

Do-While 循环

以下是代码截图:

Do-While 循环

代码说明:

  1. 在我们的代码中包含 iostream 头文件。它将允许我们从控制台读取和写入。
  2. 包括 std 命名空间,以便使用其类和函数而无需调用它。
  3. 调用 main() 函数,程序逻辑应添加到该函数中。{ 标记 main() 函数主体的开始。
  4. 一条评论。 C++ 编译器将跳过这一步。
  5. 声明一个整数变量 x 并赋予其值 1。
  6. 创建 do-while 循环。{ 标记循环体的开始。
  7. 在控制台上打印变量 x 的值以及其他文本。endl 是 C++ 关键字含义结束行。
  8. 每次迭代后将 x 的值增加 1。
  9. 循环体结束。测试表达式已添加到循环体末尾。它测试 x 的值是否小于 5。
  10. 如果程序运行正常,main() 函数应该返回一个值。
  11. 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;
}

输出:

Do-While 循环

以下是代码截图:

Do-While 循环

代码说明:

  1. 在我们的代码中包含 iostream 头文件。它将允许我们从控制台读取和写入。
  2. 包括 std 命名空间,以便使用其类和函数而无需调用它。
  3. 调用main()函数,在其中添加程序的逻辑。
  4. { 标记 main() 函数主体的开始。
  5. 声明两个整数变量 num 和 sum。变量 sum 已初始化为 0。
  6. 创建 do-while 循环。{ 标记循环体的开始。
  7. 在控制台上打印文本“输入一个数字:”。
  8. 从控制台读取用户输入并将值存储在变量 num 中。cin(控制台输入)是一个读取用户输入的函数。
  9. 将 num 的值添加到 sum 的值中,并将结果存储在变量 sum 中。
  10. } 标记循环体的结束。测试表达式已添加到循环体的末尾。它测试用户输入的值是否不为 0。!= 是不等于运算符。如果用户输入 0,则循环应终止。
  11. 在控制台上与其他文本一起打印变量 sum 的值。
  12. 如果程序运行正常,main() 函数应该返回一个值。
  13. main() 函数体结束。

嵌套 Do While 循环

In C++,我们可以在一个 do-while 循环内创建一个 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 语句表示外层循环的测试条件。

嵌套 Do 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);
}

输出:

嵌套 Do While 循环

以下是代码截图:

嵌套 Do While 循环

代码说明:

  1. 在我们的代码中包含 iostream 头文件。它将允许我们从控制台读取和写入。
  2. 包括 std 命名空间,以便使用其类和函数而无需调用它。
  3. 调用 main() 函数,程序逻辑应添加到该函数中。{ 标记 main() 函数主体的开始。
  4. 声明一个整型变量a并赋值1。
  5. 创建外部 do-while 循环。{ 标记外部循环体的开始。
  6. 声明一个整型变量 b 并赋值 1。
  7. 创建内部 do-while 循环。{ 标记内部循环体的开始。
  8. 在控制台上打印变量 a 的值。“\n” 是换行符,用于将鼠标光标移动到下一行。
  9. 每次迭代后将 b 的值增加 1。
  10. 内循环体结束。测试表达式已添加到循环体末尾。它测试 b 的值是否小于或等于 5。
  11. 每次迭代后将 a 的值增加 1。
  12. 外层循环体结束。测试表达式已添加到循环体末尾。它测试 a 的值是否小于或等于 3。
  13. main() 函数体结束。

总结

  • do-while 循环多次运行一段代码。
  • 当迭代次数不固定时应该使用它。
  • 在 do-while 循环中,循环体位于测试表达式之前。
  • 即使测试表达式变为假,循环体也会执行至少一次。
  • 当迭代次数不固定时应使用此循环。
  • 只要条件为真,while 循环就可以运行任意次数。
  • 每次迭代后都会评估一次条件。
  • 条件评估的结果决定了要采取的行动。
  • 如果条件为真,循环就执行循环主体。
  • 当条件计算为假时,循环执行立即停止。
  • 由于do while循环体已经执行完毕,所以必须返回结果。