文档介绍:第6章循环结构程序设计
C 语言程序设计
1
本章主要内容
用goto语句实现循环控制
while循环控制
do-while循环控制
for循环控制
循环结构中的跳转语句
循环的嵌套
循环结构程序设计举例
2
goto语句及用goto构成循环
goto语句一般格式:
goto 语句标号;
….…..
标号:语句;
功能:无条件转移语句
说明:
不能用整数作标号
只能加在可执行语句前面
可与if一起构成循环
限制使用goto语句
3
例如:
【】编写程序,求100个自然数的和
即: s=1+2+3+ …+100
思路:寻找加数与求和的规律
加数i——从1变到100,每循环一次,使i增1,直到i的值超过100。i的初值设为1。
求和——设变量 sum 存放和,循环求sum=sum+i,直至i超过100。
4
/**/
#include <>
main()
{ int i,sum=0;
i=1;
loop: if(i<=100)
{ sum+=i;
i++;
goto loop;
}
printf("%d",sum);
}
循环体
用if 和goto语句构成循
sum=0+1
sum=1+2=3
sum=3+3=6
sum=6+4
……
sum=4950+100=5050
循环初值
循环终值
循环变量增值
循环条件
5
注意:
goto语句能实现程序无条件转移,为编程提供了便利。但是无限制地使用,会破坏程序的结构化程度。因此应限制使用。
6
while循环控制
语句一般格式
while (表达式) 循环体语句
一般为关系表达式或逻辑表达式,也可以是C语言其他类型的合法表达式
用来控制循环体是否执行
称为内嵌语句,可以是基本语句、控制语句,也可以是复合语句
是循环重复执行的部分
7
功能:
计算表达式的值,为非0(逻辑真)时,重复执行内嵌语句,每执行一次,就判断一次表达式的值,直到表达式的值为0 时结束循环,转去执行while后面的语句。
当表达式为真
语句
N-S结构图
N
Y
流程图
表达式非0?
语句
循环控制条件
循环体
8
特点:先判断表达式,后执行循环体
说明:
循环体有可能一次也不执行
循环体可为任意类型语句
下列情况,退出while循环
条件表达式不成立(为零)
循环体内遇break,return,goto
无限循环: while(1)
循环体;
9
例如:
【】用while编写程序,求100个自然数的和
#include <>
main()
{ int i,sum=0;
i=1;
while(i<=100)
{ sum=sum+i;
i++;
}
printf("%d",sum);
}
循环初值
循环终值
循环变量增值
循环条件
循环体
i: 循环控制变量
sum: 累加器
10