1 / 51
文档名称:

第5章 循环结构程序设计.ppt

格式:ppt   页数:51
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

第5章 循环结构程序设计.ppt

上传人:小猪猪 2012/1/7 文件大小:0 KB

下载得到文件列表

第5章 循环结构程序设计.ppt

文档介绍

文档介绍:第5章循环结构程序设计
北京科技大学信息基础科学系
C 语言程序设计
1
问题1:
如何根据收入,确定一个人的纳税比例及纳税额?
当一个公司有多名员工时,如何计算每个人的纳税比例及纳税额?
提出问题:
C语言:循环语句
?
?
问题2
如何根据学生的分数判断是否及格?
如何根据全班学生的分数,分别判断他们是否及格?
12:52
2
本章主要内容
while循环控制
do-while循环控制
for循环控制
用goto语句实现循环控制
循环结构中的跳转语句
循环的嵌套
循环结构程序设计举例
12:52
3
while循环控制
语句一般格式
while (表达式) 语句
一般为关系表达式或逻辑表达式,也可以是C语言其他类型的合法表达式
用来控制循环体是否执行
称为内嵌语句,可以是基本语句、控制语句,也可以是复合语句
是循环重复执行的部分
12:52
4
功能:
计算表达式的值,为非0(逻辑真)时,重复执行内嵌语句,每执行一次,就判断一次表达式的值,直到表达式的值为0 时结束循环,转去执行while后面的语句。
当表达式为真
语句
N-S结构图
N
Y
流程图
表达式非0?
语句
循环控制条件
循环体
12:52
5
例如:
【】编写程序,求100个自然数的和
即: s=1+2+3+ …+100
思路:寻找加数与求和的规律
加数i——从1变到100,每循环一次,使i增1,直到i的值超过100。i的初值设为1。
求和——设变量 sum 存放和,循环求sum=sum+i,直至i超过100。
12:52
6
算法和程序:
main( )
{ int i,sum;
i=1; sum=0;
while (i<=100)
{ sum=sum+i;
i++;
}
printf("sum=%d\n",sum);
}
运行jc5_1
程序输出结果:
sum=5050
i: 循环控制变量
sum: 累加器
i=1,sum=0
当i <= 100
sum=sum+i
i++
输出sum
12:52
7
注意:
如果(表达式) 值为0,则循环体一次也不执行(例如当i的初值为101) 。
在循环体中必须有使循环趋向结束的操作,否则循环将无限进行(死循环)。
在循环体中,语句的先后位置必须符合逻辑,否则会影响运算结果。
思考如下的输出?
……
while (i<=100)
{ i++;
sum=sum+i; }
printf("sum=%d\n",sum);
}
运行后,输出:
sum=5150
原因是什么?
如何修改程序使结果正确?
12:52
8
⑵ int i=0;
while ( ++i <= 100 ) ==> ++i; 判断 i<=100
sum += i;
⑶ int i=0;
while ( i++ < 100 ) ==> 判断i<100;i++;
sum += i;
⑷ int i=0;
while ( i < 100 )
sum += ++i; ==> {++i; sum+=i;}
不同的while 语句形式
设:sum=0;
⑴ int i=1;
while ( i <= 100 )
sum += i++; ==> {sum+=i; ++i ; }
运行结束后:
i、sum = ?
运行结束后:
i=101,sum=5050
i=101,sum=5050
i=101,sum=5050
i=100,sum=5050
运行jC5_a
12:52
9
其他的while 语句形式
while (0) { .... }
由于表达式恒等于0,所以循环体永远也不会执行,是一个逻辑错误的语句
while (1) { .... }
由于表达式恒等于1,所以不可能通过循环控制条件来结束循环体的执行,即死循环。
为了保证循环正常运行,应该特别注意:
循环控制条件的描述
控制条件的初始状态(初始值)
循环体内部对控制条件的影响
12:52
10