只要给定的条件为真,while 循环语句会重复执行一个目标语句。
语法
C++ 中 while 循环的语法:
while(condition)
{
   statement(s);
}
在这里,statement(s) 可以是一个单独的语句,也可以是几个语句组成的代码块。condition 可以是任意的表达式,当为任意非零值时都为真。当条件为真时执行循环。
当条件为假时,程序流将继续执行紧接着循环的下一条语句。
流程图

在这里,while 循环的关键点是循环可能一次都不会执行。当条件被测试且结果为假时,会跳过循环主体,直接执行紧接着 while 循环的下一条语句。
实例
实例
#include <iostream>
using namespace std;
 
int main ()
{
   // 局部变量声明
   int a = 10;
   // while 循环执行
   while( a < 20 )
   {
       cout << "a 的值:" << a << endl;
       a++;
   }
 
   return 0;
}当上面的代码被编译和执行时,它会产生下列结果:
a 的值: 10 a 的值: 11 a 的值: 12 a 的值: 13 a 的值: 14 a 的值: 15 a 的值: 16 a 的值: 17 a 的值: 18 a 的值: 19
当 while() 中的条件值为 0 时,循环就结束了。
开始 y = 10,每循环一次 y 的值就减 1(y-- 会导致 y 减 1),当 y 值一直减到 0 时,退出 while 循环,但是还要继续做 y --操作,所以 y 最后的值就是 -1。
实例
#include <stdio.h>
int main()
{ 
    int y = 10;
    int count = 0;
    while (y--) {
        ++count;
        printf("第%d次:y=%d\n", count, y);
    }
    printf("最后y的值:%d\n", y); 
    return 0;
}
自学教程