日志11
while循环
1. 基本概念与语法
while循环是C++中的一种循环结构,它会在条件为真的情况下,反复执行循环体中的代码。语法如下:
while (条件表达式) {
// 循环体语句
}
其中,“条件表达式”是一个布尔表达式,它决定了循环是否继续执行。只要这个表达式的值为true,循环体中的语句就会被执行;当这个表达式的值变为false时,循环结束。
2. 执行流程
程序首先判断“条件表达式”的值。
如果值为true,则执行循环体中的语句。循环体执行完毕后,程序会再次判断“条件表达式”的值,若还是true,则继续执行循环体,如此反复。
一旦“条件表达式”的值为false,循环结束,程序继续执行while循环后面的语句。
3. 例子 计算1到100的整数之和:
#include <iostream>
using namespace std;
int main() {
int sum = 0;
int i = 1;
while (i <= 100) {
sum += i;
i++;
}
cout << "1到100的整数之和为:" << sum << endl;
return 0;
}
在这个例子中,首先初始化变量i为1,sum为0。然后,while循环的条件表达式i <= 100为true,所以进入循环体。在循环体中,将i的值累加到sum中,然后i的值增加1。当i的值超过100时,条件表达式变为false,循环结束,最后输出sum的值。
4. 注意事项
一定要确保循环条件在某个时候会变为false,否则会导致死循环。例如,如果在上述代码中忘记了i++这一步,i的值将永远是1,while循环的条件i <= 100将一直为true,程序就会陷入死循环。
循环体可能一次都不执行。如果while循环开始时条件表达式的值就是false,那么循环体中的语句不会被执行。例如,将上述代码中的i初始化为101,那么循环体就不会被执行。
5. 与for循环的比较
while循环和for循环在很多情况下可以相互转换。for循环更适用于已知循环次数的情况,它将循环的初始化、条件判断和变量更新都集中在循环头部,结构比较清晰。while循环则更侧重于表达“当某个条件为真时执行循环”这种逻辑,在循环次数不确定,而是依赖于某个条件的情况下使用起来更加自然。例如,在读取文件内容直到文件末尾的场景中,使用while循环就比较合适。