一、计数控制的循环
二、条件控制的循环
三、for语句,while语句,do-while语句
(一)for
for(循环起始条件;循环结束条件;循环变量增值)
当型循环、计数控制
(二)while
当型循环
条件或计数控制
while (condition)
statement;
while (condition){ {
statement;
statement;
}
(三)do-while
直到型循环
条件或计数控制
do{
statement;
statement;
}while(condition);
statement;
注意
for和while语句只有一般没有分号;
有分号表示循环体就是分号之前的内容
空语句:循环体内什么都不做
while(i<100);
i++
//死循环
for(i=0;i<100;i++);
printf("%d",i);
//用于延时
四、continue语句,break语句
(一)continue
(二)break
五、嵌套循环
(一)
注意
1、使用复合语句,以保证逻辑上的正确性
2、即用一对花括号将各层循环体语句括起来
3、内层和外层循环控制变量不能同名,以免造成混乱
4、采用右缩进格式书写,以保证层次的清晰性
(二)选择三种循环的一般原则
for:循环次数已知,计数控制的循环
while:循环次数未知,条件控制的循环
do-while:循环体至少要执行一次
这只是“一般”原则,不是“原则”
六、结构化程序设计的基本思想
1、对于“结构化程序设计”,目前还没有一个严格的定义。一个比较流行的定义是:
结构化程序设计是一种进行程序设计的原则和方法,它避免使用goto语句,采用“自顶向下、逐步求精”方法进行程序设计。
2、按照这种原则和方法设计出的程序的特点为:结构清晰 容易阅读 容易修改 容易验证
3、结构换程序设计关注的焦点:
程序结构的好坏。
(有无goto语句,并不是程序结构好坏的标志;限制和避免使用goto语句,只是得到结构化程序的一种手段,而不是目的)
4、采用顺序、选择和循环三种基本结构作为程序设计的基本单元
只有一个入口,只有一个出口
无死语句,即不存在永远都执行不到的语句;
无死循环,即不存在永远都执行不完的循环
5、采用“自顶向下、逐步求精”和模块化的方法进行结构化程序设计
Top-down, Stepwise refinement—— 1971年,wirth提出;先全局后局部,先整体后细节,先抽象后具体
6、使用goto语句的原则
主张少用、慎用,而不是禁用
保证使用之后,程序仍然是单入口,单出口
不要使用一个以上的标号
不要用goto语句往回跳,要向下跳
不要让goto语句制造出永远不会被执行的代码