3.2 循环语句
在程序中除了可以作出选择判断外,还可以重复执行指令,直到满足某个条件为止。这种
重复称为循环。循环语句包含3种形式,即while语句、do-while语句和for语句。
3.2.1 while循环语句
while循环语句的形式如下:
while(表达式)
{
重复执行的内容
}
其中,表达式一般是一个关系表达式或逻辑表达,其值应该是一个逻辑真(true)或假
(false),当表达式的值为真时开始循环执行语句,当表达式的值为假时退出循环,执行循环
外的下一条语句。循环每次都是执行完语句后回到表达式处重新开始判断,重新计算表达式的
值,一旦表达式的值为假,就退出循环,为真就继续执行语句。while循环可以用流程来演示
执行过程,如图3.10所示。
语句可以是复合语句,也就是用花括号括起多条简单语句,花括号及其所包括的语句,被
称为循环体,循环主要指循环执行循环体的内容。
【例3.14】 使用while循环计算从1到10的累加。
实例位置:光盘MR源码第3章3.14
1到10的累加就是计算1+2+…+10,需要有一个变量从1变化到10,将该变量命名为i,
还需要另外一个临时变量不断和该变量进行加法运算,并记录运算结果,将临时变量命名为
sum,变量i每增加1时,就和变量sum进行一次加法运算。变量sum记录的是累加的结果。程
序需要使用循环语句,使用while 循环需要将循环语句的结束条件设置为i<=10,循环流程如
程序代码如下:
#include "stdafx.h"
#include <iostream>
using namespace std;
void main()
{
int sum=0,i=1;
while(i<=10)
{
sum=sum+i;
i++;
}
cout << "数字1-10之和:" << sum << endl;
}
程序运行结果如图3.12所示。
程序先对变量sum和i进行初始化,while循环语句的表示式是i<=10,所要执行的循环体是
一个复合语句,是由“sum=sum+i;”和“i++;”两条简单语句完成,语句“sum=sum+i;”完
成累加,语句i++;完成由1到10的递增变化。
使用while循环的注意事项:
1)表达式不可以为空,表达式为空不合法。
2)表达式可以用非0代表逻辑值真(true),用0代表逻辑值假(false)。
3)循环体中必须有改变条件表达式值的语句,否则将成为死循环。
例如:
while(1) // 也可以写为while(true)
{
…
}
是一个无限循环语句。
例如:
while(0) // 也可以写为while(false)
{
…
}
是一个不会进行循环的语句。