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

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

ID:60760671

大小:366.50 KB

页数:60页

时间:2020-02-02

第五章 循环结构程序设计.ppt_第1页
第五章 循环结构程序设计.ppt_第2页
第五章 循环结构程序设计.ppt_第3页
第五章 循环结构程序设计.ppt_第4页
第五章 循环结构程序设计.ppt_第5页
资源描述:

《第五章 循环结构程序设计.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、课题:循环结构程序设计授课时间:10.4.12课型:新授课时:理论2节教学方法:理论讲解教学目的:介绍结构化程序设计的第三种基本结构:循环结构程序设计中的while和do-while结构,要求学生掌握语句的使用方法,并逐步建立程序设计的思想。教学重点:掌握循环结构程序设计的应用场合,设计方法教学难点:能编制出较复杂的循环结构的C程序。教学过程:新课导入->新课讲授->小结->布置作业->课后反思第5章循环结构程序设计5.1while语句和用while语句构成的循环结构5.2do–while语句和用do–while语句构成的循环结构5.3for语句和用for语句构成的循环结构5.4循环结

2、构嵌套5.5break语句和continue语句5.6语句标号和goto语句算法2:首先,置累加变量sum=0;第一步:sum=sum+1;第二步:sum=sum+2;第三步:sum=sum+3;……第一百步:sum=sum+100;例如:求1~100的累计和。可以用三种算法来解决:算法1:因为是一个等差数列,可以用求等差数列的求和公式来解决:和=(首项+末项)*项数/2,即sum=(1+100)*100/2。算法3:换个思路来考虑:首先设置一个累计器sum,其初值为0,利用sum+=n来计算(n依次取1、2、……、100),只要处理以下步骤即可:第一步:置累计变量sum的初值为0,即

3、sum=0;第二步:置加数变量n的初值为1;即n=1;第三步:执行sum+=n;第四步:n增加1,即n=n+1;第五步:当n小于等于100时,转到第三步执行;当增到101时,停止计算。此时,sum的值就是1~100的累计和。以上算法运用的重复计算结构(称为循环结构),C语言提供了3条循环语句来实现,以简化、并规范循环结构程序设计。(1)用while语句。(2)用do-while语句。(3)用for语句。(4)用goto语句和if语句构成循环。(不提倡)5.1while语句和用while语句构成的循环结构while语句的语法格式为:while(条件表达式)循环体;5.1.1while循环

4、的一般形式程序语法流程图:5.1.2while循环的执行过程循环变量初始化继续条件循环体(改变循环变量)0非0while循环由4部分组成:循环变量初始化判断条件循环体改变循环变量的值。例如,计算sum=1+2+3+…+10while循环结构如下:intsum=0;inti=1;//循环变量初始化while(i<=10)//判断条件{//循环体sum=sum+i;i++;//改变循环变量的值}注意:如果循环体包含一个以上的语句,则应该用花括号括起来,以块语句形式出现。仔细定义循环变量的初始值和判断条件的边界值。intsum=0;inti=1;//循环变量初始化while(i<=10)//

5、判断条件{//循环体sum=sum+i;i++;//改变循环变量的值}0i++;sum=sum+i;i<=9sum+=i++;sum+=++i;对条件表达式的计算总是比循环体的执行多一次。这是因为最后一次判断条件为假时不执行循环体。例:inta=5,b=2,j=0;while(a>++b)j++;printf("b=%d,j=%d",b,j);b=5,j=2a>b++b=6,j=3当循环体不实现任何功能时,要使用空语句作为循环体,表示为:while(条件表达式);例:intx=0,y=5,z=3;while(z-->0&&++x<3);y=y-1;printf(“x=%d,y=%d,z

6、=%d”,x,y,z);x=3,y=4,z=0x=3,y=3,z=0循环体中,改变循环变量的值很重要。如果循环变量的值恒定不变,或者当条件表达式为一常数时,将会导致无限循环(也即死循环)。若要退出一个无限循环,必须在循环体内用break等语句退出。例1:输入一行字符,求其中字母、数字和其他符号的个数。#includemain(){charc;intletters=0,digit=0,others=0;printf(“Pleaseinputalinecharaters”);while(c!=‘’){if(c>=‘a’&&c<=‘z’

7、

8、c>=‘A’&&c<=‘Z

9、’)letters++;elseif(c>=‘0’&&c<=‘9’)digit++;elseothers++;}printf(“letters:%d”,letters);printf(“digits:%d”,digit);printf(“others:%d”,others);}scanf(“%c”,&c);scanf(“%c”,&c);((c=getchar())!=‘’)例2:求两个正整数的最大公约数。#includem

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

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

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