在学完这三个循环后,应明确它们的异同点:用while和do…while循环时,循环变量的初始化的操作应在循环体之前,而for循环一般在语句1中进行的;while
循环和for循环都是先判断表达式,后执行循环体;而do…while循环是先执行循环体后判断表达式,也就是说do…while的循环体最少被执行一次,而while
循环和for就可能一次都不执行。另外还要注意的是这三种循环都可以用break语句跳出循环,用continue语句结束本次循环,而goto语句与if构成的循环,是不能用break和
continue语句进行控制的。
顺序结构、分支结构和循环结构并不彼此孤立的,在循环中可以有分支、顺序结构,分支中也可以有循环、顺序结构,其实不管哪种结构,我们均可广义的把它们看成一个语句。在实际编程过程中常将这三种结构相互结合以实现各种算法,设计出相应程序。但是要编程的问题较大,编写出的程序就往往很长、结构重复多,造成可读性差,难以理解,解决这个问题的方法是将c程序设计成模块化结构。
模块化程序结构c语言的模块化程序结构用函数来实现,即将复杂的c程序分为若干模块,每个模块都编写成一个c函数,然后通过主函数调用函数及函数调用函数来实现一大型问题的c程序编写。因此常说:c程序=主函数+子函数。
因此,对函数的定义、调用、值的返回等要尤其注重理解和应用,并通过上机调试加以巩固。
C语言循环控制语句提供了
while语句、do-while语句和for语句来实现循环结构。
while循环语句
一般形式如下:
while(表达式)
语句;
其中执行过程如下:
while语句
(1)计算while后面括号里表达式的值,若其结果非0,则转入(2),否则转(3)
(2)执行循环体,转(1)
(3)退出循环,执行循环体下面的语句。
由于是先执行判断后执行循环体,所以循环体可能一次都不执行。
循环体可以为空语句“;”。
do-while语句
一般形式如下:
do
语句;
while(表达式);
(1)执行循环体,转(2)
do...while语句
(2)计算while后面括号里表达式的值,若其结果非0,则转入(1),否则转(3)
(3)退出循环,执行循环体下面的语句。
注意:do……while语句最后的分号(;)不可少,否则提示出错。循环体至少执行一次。
for语句
for语句是循环控制结构中使用最广泛的一种循环控制语句,特别适合已知循环次数的情况。
一般形式如下:
for
(
[表达式
1];
[表达式
2
];
[表达式3]
)
语句
其中:
表达式1:一般为赋值表达式,给控制变量赋初值;
for语句
表达式2:关系表达式或逻辑表达式,循环控制条件;
表达式3:一般为赋值表达式,给控制变量增量或减量;
语句:循环体,当有多条语句时,必须使用复合语句。
其执行过程如下:首先计算表达式1,然后计算表达式
2。若表达式2为真,则执行循环体;否则,退出
for循环,执行for循环后的语句。如果执行了循环体,则循环体每执行一次,都计算表达式3,然后重新计算表达式2,依此循环,直至表达式
2的值为假,退出循环。