循环控制
注:本文为学习《C语言从入门到精通》时,对部分章节的总结
1、循环语句
C语言反复执行一段指令,直到满足某个条件为止。while、do...while和for循环语句。
2、while语句
while (表达式) 语句
while语句先检验条件,当条件为真,执行后面的语句块。每执行一遍循环,程序回到while语句处,重新检验条件是否满足。当一开始条件就不满足,则直接跳过循环体中的语句。
无法终止的循环被称为死循环或无限循环。
3、do...while语句
当循环过程必须至少执行一次,可以使用do...while语句。先执行循环体语句,再判断循环条件是否成立。
do {
循环体语句
} while (表达式);
注意do...while语句后的括号后有一个“;”。
4、for语句
4.1、for语句使用
for (表达式1;表达式2;表达式3)
for循环简单的应用形式:
for (循环变量赋初值; 循环条件; 循环变量) {
语句块
}
for语句也可以使用while循环形式表示:
表达式1;
while (表达式2) {
语句
表达式3;
}
4.2、for循环的变体
a、for语句省略表达式1:省略了表达式1,就会跳过对循环变量设置初值,应在for语句之前给循环变量赋值;省略表达式1时,气候的分号不能省略
b、for语句中省略表达式2:省略表达式2,则无法判断循环条件,则默认表达式2始终为真
c、for语句省略表达式3:省略表达式3,则没有改变循环变量的操作,for循环会无终止的执行
d、3个表达式都省略:既不设置初值,也不判断条件,也没有改变循环变量的操作,for循环会无终止的执行
相当于:
while (1) {
语句
}
e、表达式1为与循环变量赋值无关的表达式
4.3、for语句中的逗号应用
表达式1和表达式3在使用多个简单表达式时,中间用逗号隔开
for (int sum = 0, int i = 0; i < 100; i++) {
sum += i;
}
5、3种循环语句的比较
a、while和do...while循环只在while后面指定循环条件,循环体中应包含时循环趋于结束的语句。for循环可以在表达式3中包含使循环趋于结束的操作,可以设置循环体中的操作全部放在表达式3中。while循环能完成的功能吗,for循环都能实现。
b、用while和do...while循环时,循环变量初始化的操作应在while和do...while语句之前完成;而for语句可以再表达式1中实现。
c、while循环、do...while循环和for循环都可以用break语句跳出循环,用continue语句结束本次循环。
6、循环嵌套
循环嵌套:一个循环体内又包含另一个完整的循环结构
7、转移语句
转移语句包括:goto语句、break语句和continue语句。
7.1、goto语句
goto 标识符;
...
标识符:
语句
跳转的方向可以镶嵌,也可以向后;可以跳出一个循环,也可以跳入一个循环
7.2、break语句
break语句终止并跳出循环,继续执行后面的代码。
7.3、continue语句
continue语句结束本次循环,直接执行下一次循环。