循环语句总结

C语言提供for、while、do-while三种循环语句,三种语句的使用可以相互替代,根据情况的不同来灵活选取不同的语句:
①如果循环次数已知,即为计数控制的循环,用for语句,其结构为:
for(初始化表达式;循环控制表达式;增至表达式)
{
循环体
}
②如果循环次数未知,即为条件控制的循环,使用while语句,其结构为:
while(循环控制表达式)
{
语句序列 (循环体)
}
③如果循环体至少要执行一次,用do-while语句,其结构为:
do{
语句序列(循环体)
}while(循环控制表达式)

细节 1、for语句括号中的表达语句之间用分号(;)隔开,而不是逗号。
2、while句末加分号可能导致死循环。
3、for句末加分号导致循环什么也不做,只有延时的作用。
4、循环语句上方一定要给相应的变量初始化,不然会导致程序虽然编译正确,但运行的结果是错误的!

本节难点:嵌套循环
在一个循环语句内部循环体里面再写出一个循环语句,在应用于问题时较为抽象,可以把嵌套循环比作成大学的课表,外循环相当于第几周,内循环相当于该周的课程的顺序排列,每过一周,课要全部上一遍,就与外循环每循环一次都包含了内循环的全部。这样一想,嵌套循环就很形象了。
在求1到n!累加的程序中用到嵌套循环。
该题中有几个小细节:
1.定义是用longlong而不用int,如果用int,n只能取到13。
2.定义首项1时,位置很有讲究,每个变量存在的位置不同,因此可以分为局部变量和全局变量,位置一定不要搞错。
在用循环语句解决实际问题时,会遇到很多描述条件复杂的问题,这种问题很抽象,不好思考和下手,需要抛开冗长的描述,提炼出藏在其中的数学模型本质,再对应其条件写出程序。遇到难想的问题时,有时会使用穷举法,在我们程序设计课上,老师亲切地称之为“暴力法”,将变量从1开始一直循环,直到满足条件的那一个值。
而当仅需输出一个符合条件的结果时,可使用break语句,跳出循环,输出结果。
当列出全部符合结果是,用continue语句,中断此次循环,开始下一次循环。
通过这一节循环语句的学习,见识了更难的问题,对之前学过的内容有了更深的掌握,像学了乘法之后对加法更为了解一样,对抽象的思考渐渐熟悉,例如循环嵌套,将每一行、每一列交织成一个网格,条件控制使其输出各种形状。
每个人的思维不完全相同,一个问题解决的程序便多种,每做一道题,就会有足够的满足感。

猜你喜欢

转载自blog.csdn.net/qq_43628835/article/details/84641416