C++ Do-While 循环2025 年 3 月 29 日 | 阅读 8 分钟 在 C++ 中,do-while 循环是 while 循环的一种变体。它是一个出口控制循环,这意味着在循环体执行之后才检查条件。它在检查条件之前至少打印一次输出。C++ do-while 循环用于多次迭代程序的一部分。 它与 while 循环不同,while 循环是入口控制的,它首先检查条件,如果条件为假,则不能运行循环体。当至少需要一次执行,但确切的迭代次数未知时,do-while 循环会有效地执行。 语法它具有以下语法。 其中,
C++ 中 do-while 循环的流程图![]() 正如我们在流程图中看到的,使用以下步骤在 C++ 中实现 do-while 循环: 步骤 1:首先,启动 do-while 循环。 步骤 2:在下一步中,它至少执行一次循环体。 步骤 3:之后,它检查给定的条件。如果条件为真,它将继续执行循环体,直到条件变为假。 步骤 4:如果条件为假,它将结束循环体。 步骤 5:最后,它打印输出。 简单的 do-while 循环示例让我们举一个例子来说明 C++ 中的 do-while 循环。 示例编译并运行输出 Hello!! Hello!! Hello!! Hello!! Hello!! Hello!! 说明 此 C++ 程序演示如何使用 do-while 循环多次打印“Hello!!”。在将整数变量 'q' 设置为 1 后,循环在检查条件之前开始运行。在每次迭代之后,'q' 在循环内部递增,并打印“Hello!!”。循环继续运行,只要 'q' 小于或等于 6,以确保消息显示六次。由于在执行后测试条件,即使 'q' 的初始值发生变化,循环也会至少运行一次。 嵌套 do-while 循环在 C++ 编程语言中,一个 do-while 循环内部包含另一个 do-while 循环称为嵌套 do-while 循环。在外部循环进入下一次迭代之前,内部循环必须完成其所有迭代。这表明内部循环在外部循环的每次迭代中完全执行,直到其条件为假。 简单的嵌套 do-while 循环示例让我们举一个例子来说明 C++ 中的嵌套 do-while 循环。 示例编译并运行输出 The outer Loop Iteration count is: 1 The inner Loop Iteration count is: 1 The inner Loop Iteration count is: 2 The inner Loop Iteration count is: 3 The Outer Loop Iteration count is: 2 The inner Loop Iteration count is: 1 The inner Loop Iteration count is: 2 The inner Loop Iteration count is: 3 说明 此 C++ 程序使用嵌套 do-while 循环。内部循环每次迭代运行三次(k 从 1 到 3),而外部循环运行两次(q 从 1 到 2)。在外部循环进入下一次迭代之前,内部循环完成。内部循环记录正在进行的迭代,而外部循环指示一系列内部循环运行的结束。do-while 循环确保即使条件最初为假,循环体也会运行,因为它们在验证条件之前至少运行一次。 无限 do-while 循环在 C++ 中,如果循环条件始终为真,则会产生无限 do-while 循环。使用 true 条件可确保循环将无限期地继续运行,因为 do-while 循环在验证条件之前至少运行一次。需要一个 break 语句或其他控制机制(例如 return 或 exit())来停止它。 语法它具有以下语法。 无限 do-while 循环示例让我们举一个例子来说明 C++ 中的无限 do-while 循环。 示例编译并运行输出 This loop will run indefinitely. This loop will run indefinitely. This loop will run indefinitely. This loop will run indefinitely. 说明 此 C++ 程序演示了一个无限 do-while 循环。至少执行一次后,do 块会向控制台打印“This loop will run indefinitely”。它重复地重复,因为循环条件为真,这导致了一个无限循环。向代码添加 break 语句或手动结束程序是停止执行的两种方法。在正常情况下,循环永远不会退出;因此,return 0 语句无法到达。 do-while 循环的示例1. 使用 do-while 循环计算阶乘的程序让我们举一个例子来说明如何使用 do-while 循环来确定一个数字的阶乘。 程序编译并运行输出 Enter a number: 6 The factorial of a given number 6 is 720 说明 此 C++ 程序使用 do-while 循环来确定给定数字的阶乘。它首先使用用户输入的整数 (num_ber) 将阶乘初始化为 1。在循环开始时将 q 设置为输入的数字后,它将阶乘乘以 q,每次迭代递减 q,直到它达到零。由于 do-while 循环,计算将至少执行一次。之后,程序打印输入数字的计算阶乘。 2. 使用 do-while 循环打印金字塔图案的程序让我们举一个例子来说明如何使用 do-while 循环打印金字塔图案。 程序编译并运行输出 Enter the number of rows: 7 * * * * * * * * * * * * * * * * * * * * * * * * * * * * 说明 此 C++ 程序使用 do-while 循环以直角显示金字塔图案。用户首先输入行数。之后,内部 do-while 循环 (k) 打印每行中的星号,而外部 do-while 循环 (q) 确定有多少行。每次内部循环从 k = 1 到 q 迭代时,它都会打印 *。在打印完一行的星号后,程序移动到下一行并递增 q,直到达到指定的行数。 3. 使用 do-while 循环计算乘法表的程序让我们举一个例子来说明如何使用 do-while 循环来确定乘法表。 程序编译并运行输出 Enter a number: 7 7 * 1 = 7 7 * 2 = 14 7 * 3 = 21 7 * 4 = 28 7 * 5 = 35 7 * 6 = 42 7 * 7 = 49 7 * 8 = 56 7 * 9 = 63 7 * 10 = 70 说明 使用 do-while 循环,此 C++ 程序在接收用户输入的整数后,打印其从 1 到 10 的乘法表。虽然 q 初始化为 1 并用作乘数,但用户输入存储在变量 num_ber 中。在 do 块内,程序将 q 增加 1 并输出乘法结果。直到 q 大于 10,循环才停止运行。由于 do-while 循环,即使 num_ber 为零,乘法表也一定会至少打印一次。 C++ do-while 循环选择题1. C++ 的 while 循环和 do-while 循环之间主要区别是什么?
答案:b) do-while 循环至少执行一次,但 while 循环可能不执行。 2. 下面的 C++ 程序的输出是什么?
答案:d) 5 4 3 2 1 3. 循环将执行多少次?
答案:c) 1 4. 下列代码的输出是什么?
答案:a) 6 4 2 5. 关于 do-while 循环,以下哪项陈述是正确的?
答案:a) 循环至少执行一次。 下一主题C++ Break 语句 |
在 C++ 编程中,continue 语句是一种控制语句,用于跳过任何循环的当前迭代并将控制转移到迭代的开头。它强制程序控制运行循环迭代。continue 语句是...
阅读 8 分钟
C++ 中的 Break 语句 在 C++ 中,break 语句用于跳出循环或 switch 语句。它在给定条件下中断程序的当前流程。在内循环的情况下,它只中断内循环。换句话说,break...
11 分钟阅读
C++ 使用 goto 语句作为跳转语句,它允许程序员将程序执行定向到当前函数内的预定义标签。此程序语句在没有条件的情况下执行,然后将控制转移到同一函数内的定义位置。它用于传输...
7 分钟阅读
在 C++ 编程中,注释用于使代码更易于阅读和理解。程序员通过提供变量、方法、类或特定代码段的描述来帮助记录他们的工作。编译器会忽略注释,因此它们不会影响程序的执行方式。注释...
5 分钟阅读
Switch Case C++ 在 C++ 中,switch 语句是一种流程控制结构,它使我们能够基于给定表达式的值运行多个代码段。当有...时,它提供了 if-else-if 语句序列的复杂而有效的替代方案。
14 分钟阅读
C++ While 循环 在 C++ 编程语言中,循环是迭代一组语句直到满足特定条件的重要概念。While 循环是因其简单性和多功能性而闻名的循环之一。在 C++ 中,while 循环用于...
阅读 8 分钟
C++ for 循环 在 C++ 中,for 循环是一种入口控制循环,主要用于多次迭代程序的某个部分。如果迭代次数是固定的,建议使用 for 循环而不是 while 或 do-while 循环。语法:C++ for...
阅读 8 分钟
编程语言依赖条件语句来通过依赖于条件的特定代码块来实现执行控制。C++ 编程提供了 if-else 语句,因为它是用于进行决策的基本条件结构。if 语句检查提供的条件以在运行不同部分之间进行选择...
阅读 8 分钟
我们请求您订阅我们的新闻通讯以获取最新更新。
我们提供所有技术(如 Java 教程、Android、Java 框架)的教程和面试问题
G-13, 2nd Floor, Sec-3, Noida, UP, 201301, India