8.7暑假集训-while 快点进来,超详细!

While 循环与 While 嵌套循环

一、While 循环与 For 循环的区别

  • 初始化方式
    while : 循环通常在循环外部进行初始化操作。
    for : 循环可以在循环头部直接进行初始化。

  • 条件判断位置
    while : 循环的条件判断在循环开始处。
    for : 循环的条件判断也是在循环开始处,但它的条件表达式更加清晰地包含了初始化和更新部分。

  • 循环变量控制
    while : 在 while 循环中,循环变量的控制和更新通常在循环体内部,可能会导致代码不够清晰和易出错。
    for : for 循环将初始化、条件判断和更新都集中在循环头部,使得循环变量的控制更加明确和简洁。

  • 适用场景
    while : 循环的条件判断比较简单,且初始化和更新操作不复杂。
    for : 要对循环变量进行复杂的初始化、条件判断和更新操作,或需要明确地展示这些步骤。
    总的来说,while 循环和 for 循环都能实现相同的功能,但在不同的情况下,根据代码的可读性和简洁性,选择使用更合适的循环结构。

二、While 循环

while循环是一种在 C/C++ 中常用的控制结构,用于在指定条件为真时重复执行一段代码块。
基本语法如下:

while (condition) {
    // 循环体
}
  • condition 是一个表达式,只要它的值为真(非零),循环体就会被执行。
  • 循环体中的代码会在每次条件判断为真时执行。
int i = 0;
while (i < 5) {
    cout << i << " ";
    i++;
}

这段代码会输出 0 1 2 3 4,因为只要 i 的值小于 5,循环就会继续执行。

  • 重要特点和注意事项:
  1. 在进入循环之前,一定要确保条件最终会变为假,否则可能会导致无限循环。
  2. 在循环体中,必须有能够改变条件表达式值的操作,以使循环能够正常结束。
    三、While 嵌套循环
    while嵌套循环是指在一个while循环内部包含另一个while循环。
    语法形式类似于:
while (condition1) {
    while (condition2) {
        // 内循环的循环体
    }
    // 外循环的其他操作
}

例如,打印一个乘法表:

int i = 1;
while (i <= 9) {
    int j = 1;
    while (j <= i) {
        cout << j << " * " << i << " = " << i * j << "\t";
        j++;
    }
    cout << endl;
    i++;
}

在这个例子中,外层的while循环控制行数,内层的while循环控制每行输出的乘法算式数量。

  • 嵌套循环的执行顺序
  1. 首先判断外层循环的条件,如果为真,则进入外层循环体。
  2. 进入外层循环体后,再判断内层循环的条件,如果为真,则执行内层循环体。
  3. 内层循环体执行完毕后,再次判断内层循环条件,若仍为真,则继续执行,直到内层循环条件为假。
  4. 内层循环结束后,继续执行外层循环体中内层循环之后的代码。
  5. 然后再次判断外层循环条件,若为真,则重复上述过程。
  • 常见错误和解决方法
  1. 忘记在循环体中修改条件变量的值,导致死循环。
    解决方法:仔细检查每个循环体,确保有适当的操作来改变条件变量。
  2. 嵌套层次过多,导致代码难以理解和维护。
    解决方法:尽量简化逻辑,避免不必要的嵌套。如果逻辑复杂,可以考虑将部分功能提取为函数。

总之,while循环和while嵌套循环是编程中非常有用的工具,但需要谨慎使用,以确保代码的正确性和可读性。

这些可能对你有些帮助

作者制作不易,点个赞吧(^▽^)

(赶出来的一篇,有问题的话告知我,我以后因该会每天更新)

(内心:我想要勋章(っ °Д °;)っ)

6 个赞


while流程图来了,大家可以看看!

1 个赞

:+1: :+1: :+1:太厉害了

1 个赞

谢谢,你是几班的?

1 个赞

2班

1 个赞

嗯嗯

1 个赞

屏幕截图 2024-08-08 100613

这个写法不对哦 你这个写法像程序员
我推我の作品

谢谢,改了

你是哪个班型 省选还是提高还是基础算法1/2/3还是语法入门还是语法进阶的

我也不知道。。。

别搞,我怕

课程 - 信友队 (xinyoudui.com)
私聊