前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >C语言程序结构3:循环结构

C语言程序结构3:循环结构

作者头像
用户6755376
发布2020-03-25 18:58:03
9460
发布2020-03-25 18:58:03
举报

循环结构可以减少代码重复书写的工作量,用来描述重复执行某段算法的问题,这是程序设计中最能发挥计算机特长的程序结构,C语言中提供四种循环,即goto循环while循环、do while循环和for循环

四种循环可以用来处理同一问题,一般情况下它们可以互相代替换,但一般不提倡用goto循环,因为强制改变程序的顺序经常会给程序的运行带来不可预料的错误,在学习中我们主要学习while、do…while、for三种循环

一、for循环:

代码语言:javascript
复制
for (表达式1; 表达式2; 表达式3) //小括号后面没有分号,如加分号则表示循环体是空语句{  循环体}

表达式1:循环控制变量初始化,也可以在for之前初始化(故可以为空);

表达式2:循环判断条件,满足条件执行循环体,不满足则结束循环,

为空则表示条件恒成立(应在循环体内设置break条件,否则死循环);

表达式3:循环控制变量增量(变化也可以写在循环体内,甚至表达式2中,故也可为空)。

三个表达式中间用分号隔开,for后面小括号里面有且只能有两个分号,不能多也不能少。表达式1初始化有多个的话用逗号隔开;表达式3增量有多个也用逗号隔开。

三个表达式可以全为空:for(; ;) {循环体}

注:for循环()中的表达式1、3都可以省略,但标准的for循环中,应该把循环控制变量的初始化,增量都放在()当中,并且在循环体中不建议更改循环控制变量。表达式2省略表示条件恒成立(应在循环体内设置break循环终止条件,否则死循环)。

循环执行步骤

第一,先进行循环控制变量初始化;

第二,执行循环终止条件,如果判断结果为真,则进入第三步;如果为假则循环终止并退出;

第三,执行循环体;

第四,执行循环控制变量增量,转入第二步;   

二、while循环:

代码语言:javascript
复制
循环控制变量初始化语句;while(循环判断条件)//小括号后面没有分号,如加分号则表示循环体是空语句{  循环体  循环控制变量增量 //有时增量和循环体没有明显界限}

循环执行步骤:

第一,先进行循环控制变量初始化(在while之前);

第二,判断循环终止条件,如果判断结果为真,则进入第三步;如果为假则不执行循环体;

第三,执行循环体;

第四,执行循环控制变量增量,转入第二步。

三、do while循环:

代码语言:javascript
复制
循环控制变量初始化语句;do{  循环体  循环控制变量增量 //有时增量和循环体没有明显界限}while (循环判断条件);  //注意最后这里有个分号

循环执行步骤:

第一,先进行循环控制变量初始化(在do while之前);

第二,执行循环体;

第三,执行循环控制变量增量;

第四,判断循环终止条件,如果判断结果为真,则返回第二步;如果为假则直接退出循环;

四、总结:

1、for、while循环都是先判断后执行,do while循环是先执行后判断,等循环一次之后,其实都是一样的。for、while循环如果第一次判断就不成立,则循环体执行次数为0;但do while循环是后判断,所以循环体至少执行了一次。

2、三种循环里面,判断条件都是循环继续的条件,而不是循环终止条件(很多同学在这犯错)。只有在循环体里面添加 if(判断条件) break; ,这个条件才是循环终止条件。

3、循环体里面的break语句,判断条件满足执行到break的话,结束当前整个循环;continue语句的话是结束当前这一次循环,继续下一次判断循环(对于多重循环,注意break、continue在哪一层)。

4、goto语句与if构成的循环,是不能用break和 continue语句进行控制的。现在都不建议使用goto语句。

5、用while和do…while循环时,循环变量的初始化的操作应在循环体之前,而for循环一般在表达式1中进行的。

6、常用的三种循环结构学习的重点在于弄清它们相同与不同之处,以便在不同场合下使用,这就要清楚三种循环的格式和执行顺序,将每种循环的流程图理解透彻后就会明白如何替换使用。

如把while循环的例题,用for语句重新编写一个程序,这样能更好地理解它们的作用。特别要注意在循环体内应包含趋于结束的语句(即循环变量值的改变),否则就可能成了一个死循环,这是初学者的一个常见错误。

7、嵌套:对于多重巡环,只是在循环体里面包含了另一个循环结构。理清楚结构层次,不难理解。循环体里面可以包含循环,也可以是分支。顺序结构、分支结构和循环结构并不彼此孤立的,在循环中可以有分支、顺序结构,分支中也可以有循环、顺序结构,其实不管哪种结构,我们均可广义的把它们看成一个语句

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-03-24,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 计算机二级C语言 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档