C语言课件第5章 循环结构程序设计.ppt

C语言课件第5章 循环结构程序设计.ppt

ID:56430791

大小:160.00 KB

页数:44页

时间:2020-06-18

C语言课件第5章 循环结构程序设计.ppt_第1页
C语言课件第5章 循环结构程序设计.ppt_第2页
C语言课件第5章 循环结构程序设计.ppt_第3页
C语言课件第5章 循环结构程序设计.ppt_第4页
C语言课件第5章 循环结构程序设计.ppt_第5页
资源描述:

《C语言课件第5章 循环结构程序设计.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、本章要点while、do…while、for三种循环语句continue和break语句循环的嵌套循环结构程序的应用举例学习方法建议:学习本章内容时,应重点掌握三种循环语句的基本流程,并在此基础上理解循环嵌套的应用。要求多读程序,理解编程的算法、编程的思路,并仿照例题多编程序、上机练习,真正掌握循环结构程序的设计。第5章循环结构程序设计1.问题描述——统计学生某门课程的平均成绩每学期期末,通常需要对各门课程的教学情况进行总结。其中,统计课程的平均成绩是考察教学效果的重要评定参数。假设某班40名同学选修了C语言程序设计,要求统计该门课程的平均成绩。

2、2.引例分析要想统计课程的平均成绩,应先求出所有学生的成绩总和,然后用人数去除总成绩可得结果。首先设定变量sum表示总成绩,令其初值为零,即sum=0;定义变量score用来表示某位同学的成绩。5.1引例3.程序代码#defineN40#includemain(){inti=1,sum=0;/*初始化循环控制变量i和累加器sum*/intscore;/*定义存放成绩的变量score*/floatavg;/*定义存放平均成绩的变量avg*/while(i<=N){scanf("%d",&score);/*输入第i位同学的成绩*/s

3、um+=score;/*实现累加*/i++;/*循环控制变量i增1*/}avg=(float)sum/N;/*计算平均值*/printf("avg=%.2f",avg);}5.2while语句while语句用来实现“当型”循环结构。其一般格式为while(表达式)语句;当表达式为非值时,执行while语句中内嵌语句,其执行过程如图所示。其特点是:先判断表达式,后执行语句。main(){inti=1,sum=0;while(i<=100){sum+=i;i++;}printf("sum=%d",sum);}【例5.1】用while语句求1~

4、100的累加和。运行结果为:sum=5050sum=0while(i<=100)sum+=i;i++;printf(“sum=%d”,sum);N-S图【例5.2】求n!,即求n的阶乘,n由键盘输入。#include"stdio.h"main(){inti=1,n,s=1;printf("Inputn:");scanf("%d",&n);while(i<=n){s*=i;i++;}printf("%d!=%d",n,s);}5.3dowhile语句do…while语句的特点是先执行循环体,然后判断循环条件是否成立。其一般格式为:do{循环

5、体语句;}while(表达式);/*本行的分号不能缺省*/其特点是:先执行循环体语句,然后再判断表达式。【例5.3】用do…while语句实现引例。#includemain(){inti=1,sum=0;/*定义并初始化循环控制变量i及累计器sum*/intscore;/*定义存放成绩的变量score*/floatavg;/*定义存放平均成绩的变量avg*/do{scanf("%d",&score);/*输入第i位同学的成绩*/sum+=score;/*实现累加*/i++;}/*循环控制变量i增1*/while(i<=40);/

6、*循环继续条件:i<=40*/avg=(float)sum/40;/*计算平均值*/printf("avg=%.2f",avg);}【例5.4】用do…while语句求解1~100的累加和。#includemain(){inti=1,sum=0;do{sum+=i;i++;}while(i<=100);printf("sum=%d",sum);}i=1,sum=0;sum+=i;i++;直到i>100时printf(“sum=%d”,sum);N-S图【例5.5】while和do…while循环的比较。(1)main

7、(){ints=0,i;scanf("%d",&i);while(i<=10){s=s+i;i++;}printf("s=%d",s)}运行结果为:输入1↙s=55再运行一次11↙s=0(2)main(){ints=0,i;scanf("%d",&ido{s=s+i;i++;}while(i<=10);printf("s=%d",}运行结果为输入1↙s=55再运行一次11↙s=11可以看到:当输入i的值小于或等于10时,二者得到结果相同。而当i>10时,二者结果就不同了。这是因为此时对while循环来说,一次也不执行循环体,而对do…wh

8、ile循环语句来说则要执行一次循环体。while循环是先判断,而do…while循环是后判断。5.4for语句在3种循环语句中,for语

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。