第五章.ppt

大学二级C语言程序设计及同步训练-涂玉芬-课件PPT

收藏

资源目录
跳过导航链接。
大学二级C语言程序设计及同步训练-涂玉芬-课件PPT.zip
二级C语言程序设计及同步训练-涂玉芬-PPT演示文稿
教案资料.ppt---(点击预览)
二级C语言程序设计及同步训练-涂玉芬-PPT课件文件
文稿ppt_ppt.txt---(点击预览)
文稿ppt_ppt.jpg---(点击预览)
文稿ppt.ppt---(点击预览)
二级C语言程序设计及同步训练-涂玉芬-大学教学资料
压缩包内文档预览:(预览前20页/共39页)
预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图
编号:21836173    类型:共享资源    大小:11.93MB    格式:ZIP    上传时间:2019-09-06 上传人:QQ24****1780 IP属地:浙江
25
积分
关 键 词:
大学 二级 语言程序设计 同步 训练 涂玉芬 课件 ppt
资源描述:
大学二级C语言程序设计及同步训练-涂玉芬-课件PPT,大学,二级,语言程序设计,同步,训练,涂玉芬,课件,ppt
内容简介:
第5章 循环结构程序设计,当型循环:,直到型循环:,两个要素: (1)决定是否执行语句组的条件称为“循环控制条件”。 (2)重复执行的语句组称为“循环体”。,第5章 循环结构程序设计,5.1 循环语句,5.1.1 用ifgoto语句实现循环,1goto语句,goto语句为无条件转向语句。其一般形式为: goto 语句标号; 功能:在程序执行过程中,如果遇到goto语句,则程序流程无条件地转向语句标号后的语句继续执行。 例: goto label; label: x=a+b; ,第5章 循环结构程序设计,5.1 循环语句,5.1.1 用ifgoto语句实现循环,1goto语句,说明: (1)语句标号是一个用户标识符,在程序中一个语句的前面,表示转向的地址。 (2)语句标号仅仅对goto 语句有效,对其他语句不影响。同一个程序中,不允许有同名的语句标号。 (3)由于滥用goto语句将导致程序流程无规律、可读性差,不符合结构化程序设计原则,因此结构化程序设计方法限制使用goto语句。 (4)goto语句的主要作用是:与条件语句if配合使用,用来实现条件转移、构成循环、跳出循环体等功能。,第5章 循环结构程序设计,5.1 循环语句,5.1.1 用ifgoto语句实现循环,1goto语句,2ifgoto语句构成循环,#include main() char c; loop: c=getchar(); if(c=n) goto end; putchar(c); goto loop; end: printf(“The endn“); ,例:,例5.1 求s=1+2+3+100的值。,流程图:,程序:,#include main() int i,s; s=0; i=1; loop: if(i=100) s=s+i; i=i+1; goto loop; printf(“s=%d“,s); ,5.1 循环语句,5.1.2 while语句,while语句用来实现“当型”循环结构。 while语句的一般形式如下: while(表达式) 语句 /*循环体*/ 功能:当表达式的值为真时,执行while语句中的循环体。,第5章 循环结构程序设计,5.1 循环语句,5.1.2 while语句,while语句用来实现“当型”循环结构。 while语句的一般形式如下: while(表达式) 语句 /*循环体*/ 功能:当表达式的值为真时,执行while语句中的循环体。,例5.2 求s=1+2+3+100的值。,流程图:,程序:,#include main() int i,s; s=0; i=1; loop: if(i=100) s=s+i; i=i+1; goto loop; printf(“s=%d“,s); ,#include main() int i,s; s=0; i=1; while (i=100) s=s+i; i= i +1; printf(“s=%d“,s); ,第5章 循环结构程序设计,5.1 循环语句,5.1.2 while语句,说明: (1)循环体如果包含一个以上的语句,应该用花括号括起来,以复合语句的形式出现,否则while语句的范围只到while后面第一个分号处,即循环体是一个语句。 (2)在循环体中应有使循环趋向于结束的语句,即设置修改循环条件的语句,否则,循环体要么一次也不执行,要么是死循环。 (3)while语句的特点是先判断表达式的值,然后执行循环体中的语句,如果表达式的值一开始为假(值为0),则循环体一次也不执行,转入while语句的下一语句去执行。,第5章 循环结构程序设计,5.1 循环语句,5.1.3 dowhile语句,dowhile语句用来实现“直到型”循环结构。 dowhile语句的一般形式如下: do 语句 /*循环体*/ while(表达式); 功能:先执行一次循环体,然后判断表达式的值,当表达式的值为真时,返回重新执行循环体,如此反复,直到表达式的值等于假为止,此时循环结束。,例5.3 求s=1+2+3+100的值。,#include main() int i,s; s=0; i=1; loop: if(i=100) s=s+i; i=i+1; goto loop; printf(“s=%d“,s); ,#include main() int i,s; s=0; i=1; while (i=100) s=s+i; i= i +1; printf(“s=%d“,s); ,#include main() int i,s; s=0; i=1; do s=s+i; i= i +1; while (i=100); printf(“s=%d“,s); ,第5章 循环结构程序设计,5.1 循环语句,5.1.3 dowhile语句,说明: (1)在dowhile语句的循环体中也应有使循环趋向于结束的语句,即设置修改循环条件的语句,否则,循环体要么只执行一次,要么是死循环。 (2)如果dowhile语句的循环体部分是多个语句组成的,也必须用左右花括号括起来,使其形成复合语句。 (3)用while语句和用dowhile语句处理同一问题时,若二者的循环体部分一样,其结果也一样。但在while后面的表达式一开始就为假时,两种循环的结果是不同的,dowhile语句中循环体至少要执行一次。,第5章 循环结构程序设计,5.1 循环语句,5.1.4 for语句,for语句主要用在循环次数确定的情况下。 for语句的一般形式如下: for(表达式1;表达式2;表达式3) 语句 /*循环体*/ 功能: (1)先计算表达式1的值。 (2)计算表达式2 的值,若结果为真,则执行后面的循环体;若结果为假,则结束循环。 (3)若结果为真,则执行后面的循环体后,进行表达式3 的计算,完成一次循环。 (4)再次计算表达式2 的值,开始再次循环,直到计算表达式2的值为假,结束循环。,例5.3 求s=1+2+3+100的值。,#include main() int i,s; s=0; i=1; while (i=100) s=s+i; i= i +1; printf(“s=%d“,s); ,#include main() int i,s; s=0; i=1; do s=s+i; i= i +1; while (i=100); printf(“s=%d“,s); ,#include main() int i,s; s=0; for(i=1;i=100;i=i+1) s=s+i; printf(“s=%d“,s); ,第5章 循环结构程序设计,5.1 循环语句,5.1.4 for语句,(1)for语句的条件测试在前,所以循环体可能一次也不执行。 (2)在for语句中,使循环趋向于结束的语句,即设置修改循环条件的语句,一般是表达式3语句,也可以放在循环体中。 (3)如果for语句的循环体部分是多个语句组成的,也必须用左右花括号括起来,使其形成复合语句。,说明:,第5章 循环结构程序设计,5.1 循环语句,5.1.4 for语句,说明:,(4)for语句中的表达式1和表达式3都可以是一个简单的表达式,也可以是逗号连接的多个表达式,此时的逗号作为运算符使用。 例: for(s=0,i=1;i=100;i+) s=s+i; for(i=1,j=100;i=j;i+,j-) k=i+j;,第5章 循环结构程序设计,5.1 循环语句,5.1.4 for语句,说明:,(5)for语句中的表达式2一般是关系表达式或逻辑表达式,但也可以是数值表达式或字符表达式,如果其值为非0,即为真,就执行循环体。 (6)for语句中的三个表达式都可以省略,但用于三个表达式之间的分隔符“;”不能省略。,第5章 循环结构程序设计,5.1 循环语句,5.1.4 for语句,说明:,1)省略表达式1时,应在for语句之前给循环变量赋初值, 例如:i=1; for(;i=100;i+) s=s+i; 执行时,跳过“计算表达式1”这一步,其他不变。 2)省略表达式2时,认为表达式2始终为真,循环无终止地进行下去。 例如:for(i=1; ;i+) s=s+i; 3)省略表达式3时,无修改循环条件的语句,此时应在循环体中增加修改循环条件的语句,保证循环正常结束。 例如:for(i=1; i=100;) s=s+i; i+; 4)三个表达式都省略时,其形式如下: for ( ; ; ) 此时,for语句不设初值,不判断条件(认为表达式2的值为真),不修改循环条件,循环无终止地进行下去。,第5章 循环结构程序设计,5.2 多重循环,在循环体语句中又包含有另一个完整的循环结构的形式,称为循环的嵌套(又称双重循环)。如果内循环体中又有嵌套的循环语句,则构成多重循环。 嵌套在循环体内的循环体称为内循环,外面的循环称为外循环。 while、dowhile、for三种循环都可以互相嵌套。,第5章 循环结构程序设计,5.2 多重循环,双重循环的执行过程用流程图表示为:,例5.5 编写一程序,输出如下九九乘法表。,11=1 12=2 19=9 21=2 22=4 29=18 91=9 92=18 99=81,#include main() int a,b,c; for(a=1;a=9;a+) for(b=1;b=9;b+) c=a*b; printf(“%d%d=%d“,a,b,c); printf(“n“); ,第5章 循环结构程序设计,5.3 break和continue语句,5.3.1 break语句,格式:break; 功能:该语句可以使程序运行时中途退出一个循环体。,第5章 循环结构程序设计,5.3 break和continue语句,5.3.1 break语句,说明: (1)break语句不能用于循环语句和开关语句之外的任何其他语句。 (2)在多重循环的情况下,使用break语句时,仅仅退出包含break语句的那层循环体,即break语句不能使程序控制退出一层以上的循环。 (3)在几种循环中,主要是在循环次数不能预先确定的情况下使用break语句,在循环体中增加一个分支结构。当某个条件成立时,由break语句退出循环体,从而结束循环过程。,例5.6 判断一个数m是否是素数。,#include main() int m,i; scanf(“%d“, ,第5章 循环结构程序设计,5.3 break和continue语句,5.3.2 continue语句,格式:continue; 功能:结束本次循环,即跳过循环体中下面尚未执行的语句,继续进行下一次循环。 说明:continue语句只结束本次循环,而不是终止整个循环的执行。,例5.7 输出100200之间的不能被3整除的数。,#include main() int m; for(m=100;m=200;m+) if(m%3=0) continue; printf(“%d“, m); ,第5章 循环结构程序设计,5.4 应用举例,例5.8 求Fibonacci数列的前40个数。已知:f1=1,f2=1。,#include main() long int f1,f2; int i; f1=1;f2=1; for(i=1;i=20;i+) printf(“%8ld %8ld “,f1,f2); if(i%4=0)printf(“n“); f1=f1+f2; f2=f2+f1; ,第5章 循环结构程序设计,5.4 应用举例,例5.9 统计从键盘输入的一行字符的个数(以回车键作为输入结束标记)。,#include main() char ch; int num=0; ch=getchar(); while(ch!=n) num+; ch=getchar(); printf(“num=%dn“,num); ,第5章 循环结构程序设计,5.4 应用举例,例5.10 编写一程序,求任意10个整数中的最大值。,#include main() int max,i,a; scanf(“%d“, ,第5章 循环结构程序设计,5.4 应用举例,例5.11 编写一程序,输出图形:,* * * * * * * *,#include main() int a,b; for(a=1;a=8;a+) for(b=1;b=a;b+) printf(“ “); for(b=1;b=8;b+) printf(“*“ ); printf(“n“ ); ,第5章 循环结构程序设计,5.4 应用举例,循环算法小结:,(1)在循环程序设计中,使用较多的算法是穷举法和递推法。 穷举法:穷举法的基本思想是,对问题的所有可能状态一一测试,直到找到问题的解或将全部可能状态都测试过为止。 递推法:递推法的基本思想是,不断用新值取代变量的旧值,或由旧值递推出变量的新值。在递推算法中,要重点考虑以下因素: 变量的初值。 递推公式。 递推次数。,第5章 循环结构程序设计,5.4 应用举例,循环算法小结:,(2)在循环程序设计中,循环控制有两种方法: 1)标志法:主要用在循环次数不确定的情况下。其基本思想是,设置一标志变量,标志变量的值随着循环发生变化,每循环一次,就测试一次标志变量的值,当标志变量的值等于指定标志值时,结束循环。如例5.9。 2)计数法:主要用在循环次数确定的情况下。其基本思想是,设置一计数变量,每循环一次,计数变量增1(即计一次数),直到计数变量的值到达指定次数。,第5章 循环结构程序设计,5.5 本章考点,while语句的格式及功能。 dowhile语句的格式及功能。 for 语句的格式及功能。 双重循环的概念及执行过程。 break语句的格式及功能。 continue语句的格式及功能。 循环算法。,第5章 循环结构程序设计,5.6 典型试题详解,1有以下程序段: int k=0; while(k=1)k+; while循环执行的次数是_。 A)无限次 B)有语法错误,不能执行 C)一次也不执行 D)执行1次 正确答案:A(知识点:while语句的格式与功能、运算符=和=) 试题分析:while后控制循环的表达式为k=1,即每次循环都是将1赋给k,再判断k的值是否真,而不是判断k是否等于1。运算符=和=是不同的。,第5章 循环结构程序设计,5.6 典型试题详解,2以下叙述正确的是_。 A)dowhile语句构成的循环不能用其他语句构成的循环来代替 B)dowhile语句构成的循环只能用break语句退出 C)用dowhile语句构成的循环,在while后的表达式为非零时结束循环 D)用do-while语句构成的循环,在while后的表达式为零时结束循环 正确答案:D(知识点:dowhile语句的功能) 试题分析:用while语句、dowhile语句和for语句构成的循环都是在其后的循环控制表达式的值为假(即零)时结束循环。,第5章 循环结构程序设计,5
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
提示  人人文库网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
关于本文
本文标题:大学二级C语言程序设计及同步训练-涂玉芬-课件PPT
链接地址:https://www.renrendoc.com/p-21836173.html

官方联系方式

2:不支持迅雷下载,请使用浏览器下载   
3:不支持QQ浏览器下载,请用其他浏览器   
4:下载后的文档和图纸-无水印   
5:文档经过压缩,下载后原文更清晰   
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

网站客服QQ:2881952447     

copyright@ 2020-2025  renrendoc.com 人人文库版权所有   联系电话:400-852-1180

备案号:蜀ICP备2022000484号-2       经营许可证: 川B2-20220663       公网安备川公网安备: 51019002004831号

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知人人文库网,我们立即给予删除!