05循环结构程序设计

上传人:L** 文档编号:141870003 上传时间:2020-08-13 格式:PPT 页数:29 大小:1.21MB
返回 下载 相关 举报
05循环结构程序设计_第1页
第1页 / 共29页
05循环结构程序设计_第2页
第2页 / 共29页
05循环结构程序设计_第3页
第3页 / 共29页
05循环结构程序设计_第4页
第4页 / 共29页
05循环结构程序设计_第5页
第5页 / 共29页
点击查看更多>>
资源描述

《05循环结构程序设计》由会员分享,可在线阅读,更多相关《05循环结构程序设计(29页珍藏版)》请在金锄头文库上搜索。

1、2020/8/12,计算机与信息工程分院,循环结构程序设计,计算机与信息工程分院 C语言程序设计,2,主要内容,作业,计算机与信息工程分院 C语言程序设计,3,1.概述(1),返回主菜单,计算机与信息工程分院 C语言程序设计,4,2.循环控制语句(1),2.1 goto语句,一般形式:,goto 语句标号;,由字母、数字和下划线组成,不能使用整数,例 5-1,计算机与信息工程分院 C语言程序设计,5,2.循环控制语句(2),2.2 while语句,一般形式:,while(表达式) 语句,计算机与信息工程分院 C语言程序设计,6,2.循环控制语句(3),2.3 do-while语句,一般形式,d

2、o 语句 while(表达式);,例 5-3,例 5-4,计算机与信息工程分院 C语言程序设计,7,2.循环控制语句(4),2.4 for语句,一般形式,for(表达式1;表达式2;表达式3) 语句,计算机与信息工程分院 C语言程序设计,8,2.循环控制语句(5),2.5 几种循环的比较,1)四种循环都可以用来处理同一个问题,一般可以互相代替。但一般不提倡用goto型循环。,2)while和do-while循环,循环体中应包括使循环趋于结束的语句。for语句功能最强。,3)用while和do-while循环时,循环变量初始化的操作应在while和do-while语句之前完成,而for语句可以在

3、表达式1中实现循环变量的初始化。,返回主菜单,计算机与信息工程分院 C语言程序设计,9,3.循环的嵌套,定义: 一个循环体内又包含另一个完整的循环结构,称为循环的嵌套。,返回主菜单,计算机与信息工程分院 C语言程序设计,10,4.break语句和continue语句,break语句,continue语句,不能用于循环语句和switch语句之外的任何其他语句,跳过循环体中剩余的语句而强行执行下一次循环,break语句和continue语句的区别,例 5-5,返回主菜单,计算机与信息工程分院 C语言程序设计,11,5.程序举例,例 5-6,例 5-7,例 5-8,例 5-9,例 5-10,返回主菜

4、单,计算机与信息工程分院 C语言程序设计,12,作业,思考题 (1)分析几种循环语句的使用情况 (2)break和continue语句的使用,计算机与信息工程分院 C语言程序设计,13,The end,计算机与信息工程分院 C语言程序设计,14,例5-1用goto语句和if语句构成循环求,main() int i,sum=0; i=1; loop: if(i=100) sum=sum+i; i+; goto loop; printf(%dn,sum); ,输出: 5050,计算机与信息工程分院 C语言程序设计,15,例5-2 用while语句求,main() int i,sum=0; i=1;

5、 while(i=100) sum=sum+i; i+; printf(%dn,sum); ,输出: 5050,传统流程图,N-S流程图,计算机与信息工程分院 C语言程序设计,16,例5-3 用do-while语句求,main() int i,sum=0; i=1; do sum=sum+i; i+; while(i=100) printf(%dn,sum); ,计算机与信息工程分院 C语言程序设计,17,例5-4 while和do-while循环比较,main() int sum=0,i; scanf(“%d”, ,main() int sum=0,i; scanf(“%d”, ,结果比较,

6、计算机与信息工程分院 C语言程序设计,18,while与do-while程序结果的比较,(1)while,(2)do-while,计算机与信息工程分院 C语言程序设计,19,for语句的执行过程,1)先求解表达式1 ; 2)求解表达式2,若其值为真(非0),则执行for语句中指定的内嵌语句,然后执行下面第3)步;若其值为假(0),则结束循环,转到第5)步 ; 3)求解表达式3 ; 4)转回上面第2)步继续执行 ; 5)循环结束,执行for语句下面的一个语句。,计算机与信息工程分院 C语言程序设计,20,for语句说明(1),1)for循环中的“表达式1(循环变量赋初值)”、“表达式2(循环条件

7、)”和“表达式3(循环变量增量)”都是选择项, 即可以缺省,但“;”不能缺省。,2)省略了“表达式1(循环变量赋初值)”, 表示不对循环控制变量赋初值。,3)省略了“表达式2(循环条件)”, 则不做其它处理时便成为死循环。,4)省略了“表达式3(循环变量增量)”, 则不对循环控制变量进行操作,这时可在语句体中加入修改循环控制变量的语句。,5)可以省略“表达式1(循环变量赋初值)”和“表达式3(循环变量增量)”。,for(i=1;i=100;) sum=sum+i; i+;,for(;i=100;) 相当于 while(i=100) sum=sum+i; sum=sum+i; i+; i+;,计

8、算机与信息工程分院 C语言程序设计,21,for语句说明(2),6)3个表达式都可以省略。,7)表达式1可以是设置循环变量的初值的赋值表达式,也可以是其他表达式。,8)表达式1和表达式3可以是一个简单表达式也可以是逗号表达式。,9)表达式2一般是关系表达式或逻辑表达式,但也可是数值表达式或字符表达式,只要其值非零,就执行循环体。,for(sum=0;i=100;i+) sum=sum+i;,for(sum=0,i=1;i=100;i+)sum=sum+i;,for(;(c=getchar()!=n;) printf(“%c”,c);,计算机与信息工程分院 C语言程序设计,22,break语句和

9、continue语句的区别,程序(1) while(表达式1) if(表达式2)break; ,程序(2) while(表达式1) if(表达式2)continue; ,计算机与信息工程分院 C语言程序设计,23,break语句和continue语句的区别,流程图(1),流程图(2),计算机与信息工程分院 C语言程序设计,24,例5-5把100至200之间的不能被3整除的数输出。,main() int n; for(n=100;n=200;n+) if(n%3=0) continue; printf(%d ,n); ,计算机与信息工程分院 C语言程序设计,25,5-6 用公式 求,#inclu

10、de main() int s; float n,t,pi; t=1,pi=0;n=1.0;s=1; while(fabs(t)1e-6) pi=pi+t; n=n+2; s=-s; t=s/n; pi=pi*4; printf(pi=%10.6fn,pi); ,计算机与信息工程分院 C语言程序设计,26,5-7求Fibonacci数列40个数,main() long int f1,f2; int i; f1=1;f2=1; for(i=1;i=20;i+) printf(“%12ld%12ld”,f1,f2); if(i%2=0) printf(“n”); f1=f1+f2; f2=f2+f

11、1; ,这个数列有如下特点:第1,2两个数为1,1.从第3个数开始,该数是其前面两个数之和。即: F1=1(n=1) F2=1(n=2) Fn=Fn-1+ Fn-2(n=3),计算机与信息工程分院 C语言程序设计,27,例5-8 判断m是否素数,#include main() int m,i,k; scanf(“%d”, ,计算机与信息工程分院 C语言程序设计,28,例5-9 求100至200间的全部素数,#include main() int m,i,k,n=0; for(m=101;m=k+1) printf(“%d”,m); n=n+1; if(n%n=0)printf(“n”); printf(“n”); ,计算机与信息工程分院 C语言程序设计,29,例5-10译密码。为使电文保密,往往按一定规律将其转 换成密码,收报人再按约定的规律将其译回原文。例如,可以按以下规律将电文变成密码。,include main() char c; while(c=getchar()!=n) if(c=a ,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 教学课件 > 高中课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号