2022.1.18 C语言设计(第四版)谭浩强 Day3 第五章 循环结构程序设计

一、结构化程序设计的三种基本结构:循环结构、顺序结构、选择结构

二、用while语句实现循环

1、一般形式

while (表达式)语句

① 表达式,即循环条件,也称为循环条件表达式,是一个关系表达式,他的值只能是“真”或“假”。当值为真时,执行while语句中的循环体语句,为假时,不执行循环体语句。

②语句,即循环体。循环体只能是一个语句,可以是简单的语句,也可以是复合语句(用花括号括起来),执行次数由循环条件控制。

2、特点

①先判断条件表达式,后执行循环程序设计

②循环体中应有使循环趋于结束的语句,否则循环永不结束

                             

 

三、用do···while语句实现循环

1、一般形式

do

      语句

whilel(表达式)

①语句,即循环体

②执行过程:先执行循环体,然后判断循环条件是否成立

2、特点

  先无条件地执行循环体,然后判断循环条件是否成立

3、while与do···while

对while循环而言,当条件表达式值为假时,一次也不执行循环体,而对do···while循环语句来说则至少要执行一次循环体。可以得到结论:当while后面的表达式的第1次的值为“真”时,两种循环得到的结果相同;否则,二者结果不相同(指二者具有相同的循环体的情况)。

四、用for语句实现循环

1、一般形式

for(表达式1;表达式2;表达式3)

       语句

①表达式1:设置初始条件,只执行一次。可以为零个、一个或多个变量设置处初值;

②表达式2:是循环条件表达式,用来判定是否继续循环。在每次执行循环体前先执行此表达式,决定是否继续执行循环。

③表达式3:作为循环的调整,例如使循环变量增值,它是在执行完循环体后才进行的。

这样, for语句就可以理解为

for(循环变量赋初值;循环条件;循环变量增值)

      语句

也可以改写为while循环的形式(二者无条件等价)

表达式1;        (🐖表达式1可以省略,即不设置初值,但是“表达式1”后的分号不能省略)

while 表达式2   (🐖表达式2可以省略,即默认表达式2始终为真)

    {

           语句

           表达式3  (🐖表达式3可以省略,此时程序设计者应另外设法保证循环能正常结束)

     }

④执行过程:

 

2、特点/优点

可以用于循环次数已经确定的情况,还可以用于循环次数不确定而只给出循环结束条件的情况,可以完全替代while语句
 

五、循环的嵌套

1、定义

一个循环体内又包含另一个完整的循环结构,内嵌的循环中还可以嵌套循环,这就是多层循环

2、一些形式

 六、while循环——do···while循环——for循环比较

(1)3种循环都可以用来处理同一问题,一般情况下它们可以互相代替。

(2)在while循环和do…while循环中,只在 while后面的括号内指定循环条件,因此为了使循环能正

常结束,应在循环体中包含使循环趋于结束的语句(如i计+,或i=i+1等)。for循环可以在表达式3中包

含使循环趋于结束的操作,甚至可以将循环体中的操作全部放到表达式3中。因此for语句的功能更

强,凡用while循环能完成的,用for循环都能实现。

(3)用while 和do…while循环时,循环变量初始化的操作应在 while和 do…while语句之前完成。而

for语句可以在表达式1中实现循环变量的初始化。

(4) while循环、do···while循环和 for循环,都可以用break语句跳出循环,用continue语句结束本次

循环。

七、改变循环执行的状态

1、break语句提前终止循环

(1)一般形式

break

(2)作用

使流程跳到循环体之外,接着执行循环体下面的语句

(3)注意

break语句只能用于循环语句和switch语句之中,而不能单独使用

2、continue语句提前结束本次循环

(1)一般形式

continue;

(2)作用

结束本次循环,即跳过循环体中尚未执行的语句,转到循环体结束点之前,接着执行for语句中的“表达式3”,然后进行下一次是否执行循环的判定。

3、break语句和continue语句的区别

continue语句只结束本次循环,而不是终止整个循环的执行。而break语句则是结束整个循环过程,不再判断执行循环的条件是否成立。

                                 

                                             

 

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值