一、前言

大家好,我是泺喜科教小鱼老师。循环是编程三大结构(顺序、分支、循环)中核心知识点,while 是最简单、最常用的循环语句之一。本节课带你从零认识 while 循环,看懂执行逻辑、实战倒计时案例,同时避开新手高频错误。

二、认识 while 循环基础语法

1. while 关键字释义

  • while:英文含义「当…… 的时候」,满足括号内条件就持续执行循环代码。
  • true:代表条件为真,while(true) 可以实现无限循环。

标准语法格式:

cpp

运行

while(条件表达式){
    循环体代码;
}

执行规则:

  1. 先判断括号内条件;
  2. 条件成立(true):执行大括号内循环体;
  3. 执行完循环体后,再次回头判断条件;
  4. 条件不成立(false):直接跳出循环,执行循环后的代码。

2. 基础示例:输出 1000 句 I love C++!

需求:循环打印 1000 次 I love C++!

cpp

运行

#include <iostream>
using namespace std;

int main() {
    int i = 1;
    // 当i小于等于1000时持续循环
    while (i <= 1000) {
        cout << "I love C++!" << endl;
        i++; // 每次循环i自增1,避免死循环
    }
    return 0;
}

逻辑说明: 变量i作为计数器,初始值 1;每次打印后i+1,当i=1001i<=1000 条件不成立,循环结束。

三、while 循环执行流程拆解(表格演示)

案例 1:打印 0~5 所有数字

错误示范(无自增,死循环)

cpp

运行

#include <iostream>
using namespace std;

int main() {
    int i = 0;
    while (i <= 5) {
        cout << i << endl;
        // 缺少 i++,i永远等于0,条件永远成立,死循环!
    }
    return 0;
}

执行过程表格(死循环版本)

表格

变量 i 表达式 i<=5 循环体执行情况
0 满足 输出 0
0 满足 输出 0
0 满足 输出 0
0 满足 输出 0
... 满足 无限输出 0

正确代码(增加 i++)

cpp

运行

#include <iostream>
using namespace std;

int main() {
    int i = 0;
    while (i <= 5) {
        cout << i << endl;
        i++; // 计数器自增,推动循环结束
    }
    return 0;
}

正常执行流程表

表格

变量 i 表达式 i<=5 循环体执行情况
0 满足 输出 0,i 变为 1
1 满足 输出 1,i 变为 2
2 满足 输出 2,i 变为 3
3 满足 输出 3,i 变为 4
4 满足 输出 4,i 变为 5
5 满足 输出 5,i 变为 6
6 不满足 循环终止,无输出

新手重点提醒:while 循环必须设置计数器自增 / 自减,否则会出现死循环,程序卡死!

四、实战案例:15 分钟倒计时程序

需求

模拟考试倒计时,从 15 开始倒数,直到数字为 0 停止。

正确代码

cpp

运行

#include <iostream>
using namespace std;

int main() {
    int time = 15;
    // time大于0时持续输出
    while (time > 0) {
        cout << time << endl;
        time--; // 每次数字减1
    }
    return 0;
}

运行效果:依次打印 15、14、13……1,time=0 时条件不成立,循环结束。

新手易错错误版本(自减写在循环外)

cpp

运行

#include <iostream>
using namespace std;

int main() {
    int time = 15;
    while (time <= 15) {
        cout << time << endl;
    }
    // time--写在循环外面,循环永远不会执行自减
    time--;
    return 0;
}

问题分析:time-- 在循环大括号外部,循环内部不会修改 time 的值,time 永远等于 15,条件恒成立,直接死循环。

五、核心知识点总结

  1. while 循环结构:while(条件){循环体;},先判断后执行;
  2. 循环必备三要素:
    • 计数器初始化(int i=0;)
    • 循环终止条件(i <= 5)
    • 计数器更新(i++ /time--),缺一不可,否则死循环;
  3. while(true):条件永久为真,无限循环,需要搭配 break 才能退出;
  4. 执行顺序:判断条件 → 执行循环体 → 更新变量 → 再次判断。

六、课后练习

  1. 使用 while 循环输出 1~100 所有整数;
  2. 写一个 30 秒倒计时程序;
  3. 思考:如果 while 循环不加大括号,会发生什么

更多推荐