循环结构程序设计
def:语句重复执行的语句(循环体)
1、循环控制语句(4类)
(1)当型循环
while(表达式)
{
循环体语句序列;
}
后继语句;(执行一次 )
Note:
while控制一条,整个算一条。
复合语句算一条。
(2)直到型循环
do{
循环体语句序列;
}while(表达式);
Note:
(1)do~while();后面的封号必须加
(2)根据do找与之匹配的while-----不能用单独的do
(3)do就近控制一条语句,若有多条一定加花括号{ }
(4)循环体至少执行一次
例1:
while();
语句1;
语句2;
语句3;----------4条语句,不可将语句1看作与while配对的循环语句序列
例2:Error案例
do
语句1;
语句2;
语句3;
while(表达式);
修正:
do
{语句1;
语句2;
语句3;}
while(表达式);
(3)
for( exp1 ; exp2 ; exp3 ){
循环体语句序列;
}
后继语句
Note:
exp1->初始化
exp2->条件判断
exp3->增量回exp2
for里面的两个封号不能少
若缺exp2,系统默认为真,则是一个死循环的循环体
循环次数判断
for(i=1; i++<4;); 3次 结束循环i = 5
for(i = 1; ++i < 4; i++) 1次 结束循环i = 4
两个控制语句-break和continue
格式:break;
功能:终止退出。范围:循环和switch体
#include<stdio.h>
int main(){
int i;
for(i = 1; i < 4; i++){
i++;
break;
}
printf("%d",i);
return 0;
//预期执行结果:2
}
格式:continue;
功能:结束一次循环继续。跳回
范围:循环体中;
Note:
(1)如果是for里面,跳回exp3
(2)如果是while或者do~while跳回表达式
#include<stdio.h>
int main(){
int i;
for(i = 1; i < 4; i++){
i++;
continue;
}
printf("%d",i);
return 0;
//预期执行结果:5
}