5.2 循环结构的概述
循环结构(iteration)是 高级程序设计语言三大控制结构之一,其特点是能够重复执行相
同的代码。图 5-1 是循环结构的流程图。从图中可以清晰地看到一个回路的存在。
循环结构用程序设计语言中的循环语句来实现。一般情况下,循环语句都包含一个测试条件
和一个执行部分(称为“循环体”)。当测试条件为真时,循环体将会被
反复执行,直到条件不成立为止。如果条件一直为真,那么这个循环将
会无休止地进行下去,可能会将计算机资源(特别是 CPU 资源)耗尽,
从而使别的程序不能流畅运行。这种无限的循环称为“死循环”。因此,
在循环语句的执行部分中,一定会有一些修改测试条件的语句,使循环
能在有限次的运行后结束。这样的循环是“有出口的”,是一种良好的设
计。
要使循环正确运行的另一个条件是:循环必须从一个确定的起点
开始。这称为循环的“初始化”。没有起点的循环可能会从一个随机的起
点开始,从而导致不正确的结果。
一般地,一种程序设计语言中的循环语句有多种,但都分为两大类:当型和直到型。当型循
环的结构是当测试条件成立时循环;直到型循环的结构是执行循环,直到条件不成立。C 语言的
3 种循环语句都属于当型循环。
5.3 while 语句
while 语句是 C 语言中较常使用的循环形式之一,它特别适合已知循环条件、却不明确循环
的具体次数的情况。
5.3.1 while 语句的语法
当程序员明确知道循环初始条件,以及循环次数可以为 0 次的情况下,可以使用 while 循
环,其语法如下:
while(
表达式
)
{
循环体
}
while 语句的功能是:当表达式的值为真(非 0 值),执行一遍循
环体语句,然后再计算表达式的值,当值为真,则继续执行循环体语
句,并以此类推;如果表达式的值为假(0 值),则退出循环,执行紧
跟在 while 后面的语句。特别地,当第一次表达式的值为假时,则直
接退出循环,而不会做循环体语句。图 5-2 是 while 语句的流程图。
while 语句的条件,表达式中往往包含一个变量,用于控制循环
是否继续。这个变量称为“循环控制变量”,一般用于计数。当计数达到指定数量时,循环结束。
【例 5-1】求自然数 1 到 10000 的和。
【解题思路】题目是一种典型的级数求和问题。现实中求和常使用的方法是累加。所谓累加,
评论0