ImageVerifierCode 换一换
格式:PPT , 页数:50 ,大小:2.71MB ,
资源ID:13877134      下载积分:10 金币
快捷注册下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/13877134.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请

   平台协调中心        【在线客服】        免费申请共赢上传

权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

注意事项

本文(第5章 循环控制.ppt)为本站上传会员【pc****0】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

第5章 循环控制.ppt

1、课 程 简 介,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,C,程 序 设 计,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,2026/4/29 周三,1,C,程序设计,第,5,章 循环控制,2026/4/29 周三,2,重点难点,:,1.while,、,dowhile,、,for,三个循环语句。,2.,循环嵌套,3.break,语句和,continue,语句,2026/4/29 周三,3,循环:就是在满足一定条件时重复执行一 段程序。

2、C,语言中可实现循环的语句:,while,语句,(当型循环),do while,语句,(直到型循环),for,语句,(功能多,最强大),2026/4/29 周三,4,5.1 while(),语句,一、格式,:,while(,表达式,),语句,(,语句可为一条或多条,用,括上构成复合语句,),二、执行过程,A,真,假,条 件,P,2026/4/29 周三,5,例,1,用,while,循环求,#include,main(),int i,sum=0;,i=1;,while(i=100),sum=sum+i;,i+;,printf(%d,sum);,循环变量赋初值,循环终值,循环变量增值,循环条件,

3、循环控制表达式),循环体,2026/4/29 周三,6,思考:在保证程序功能不变的前提下,1.i,的初值是否能为,0,如果可以,程序怎么改?,2.i=i+,放在,sum=sum+i,前可否,怎么改?,#include,main(),int i=0,sum=0;,while(i=100),sum=sum+i;,i+;,printf(%d,sum);,#include,main(),int i=1,sum=0;,while(i=100),i+;,sum=sum+i;,printf(%d,sum);,sum=1,;,(i100),就是控制循环次数的问题。此时循环了多少次?,2026/4/29 周三

4、7,注意:,1.,若循环体包含一条以上语句,应用,复合语句,出现。,2.,循环体中,必须有改变,循环控制变量值,的语句。(使循环趋向于结束的语句),3.,循环前,必须给循环控制变量赋,初值。,2026/4/29 周三,8,例,2,求,100!=1*2*3*.100,算法:,定义,t=1,为实型,n=1,为整型,2.,判断,n100,成立,2.1 t=t*n;,2.2 n+;,3.,输出,t,(不符合条件时)。,main(),double,t=1;,int n=1;,while(n=100),t=t*n;n+;,printf(“t=,%e,n”,t);,2026/4/29 周三,9,例,3,若

5、改为求,n!=1*2*3*.*n,main(),double t=1;int i=1,n;,scanf(“%d”,while(i=n),t=t*i;i+;,printf(“t=%en”,t);,从键盘输入,30,个学生成绩,对其进行处理,如果及格,输出“,passed,”;否则,输出“,failed,”,书上 例,5.2,2026/4/29 周三,10,2026/4/29 周三,11,5.2 dowhile(),语句,一、格式,:,do,循环体语句,while(,表达式,),;,二、执行过程,条 件,P,A,假,真,2026/4/29 周三,12,三、特点:,先执行循环体,然后再判断循环条件是

6、否成立。,注意:,dowhile(),语句中,,while,(表达式)后有分号,切记,!,2026/4/29 周三,13,例,4,:求,算法:,1.,定义,s=0,n=1,为整型,2.,循环体:,s=s+n;,n=n+1;,3.,判断,n100,成立,4.,输出(不符合时),s,。,main(),int s=0,n=1;,do s=s+n;n=n+1;,while(n=100);,printf(“s=%dn”,s);,2026/4/29 周三,14,例,5,求,分析,=1!+2!+3!+100!,算法,:,1.,定义,n=1,为整型,t=1,s=0,为实型。,2.t=t*n;s=s+t;n+;

7、3.n100,成立。,3.,输出,s(,不符合时,),。,main(),int n=1;,double s=0,t=1;,do t=t*n;s=s+t;n+;,while(n=100);,printf(“s=%en”,s);,2026/4/29 周三,15,练习题:求,1+3+5+7+99,main(),int s=0,n=1;,do s=s+n;n=n+1;,while(n=100);,printf(“s=%dn”,s);,2,将输入的一串字符显示在屏幕上,遇到空格时停止。,书上 例,5.4,2026/4/29 周三,16,2026/4/29 周三,17,while,与,dowhile,比

8、较,main(),int s=0,n;,scanf(%d,while(n=10),s=s+n;n+;,printf(%d,s);,main(),int s=0,n;,scanf(%d,do s=s+n;n+;,while(n=10);,printf(%d,s);,输入,:1,结果,:55,输入,:11,结果,:0,输入,:1,结果,:55,输入,:11,结果,:11,2026/4/29 周三,18,条 件,P,A,while,dowhile,真,假,假,条 件,P,A,假,真,假,条 件,P,条 件,P,A,假,当循环条件第一次就为假时,2026/4/29 周三,19,5.3 for(),语句

9、一、格式,:,for(,表达,1;,表达式,2;,表达式,3),语句,二、执行过程,(,1,)首先求解表达式,1,。,(,2,)求解表达式,2,,若其值为,“,真,”,(非,0,),则执行循环体中的语句,若为假,转至执行第(,5,)步。,(,3,)求解表达式,3,。,(,4,)转至第,(2),步重复执行。,(,5,)执行,for,循环语句的下一语句。,2026/4/29 周三,20,例,6,:求,main(),int s=0,n;,for(n=1;n=100;n+),s=s+n;,printf(“s=%dn”,s);,2026/4/29 周三,21,for,语句最简单的应用形式,也是最容易理

10、解的形式:,for(,表达,1;,表达式,2;,表达式,3),语句,for(,循环变量赋初值;循环条件;循环变量增值,),语句,例如,,for(i=1;i=50;i+)sum=sum+i;,2026/4/29 周三,22,1.for,语句可省略“表达式,1”,。,“表达式,1”,的作用是设定循环初始条件,“表达式,1”,省略后,应在,for,语句前面设置循环初始条件。,例,:,for(,;,i=100;i+)sum=sum+i,;,/*,注意,“表达式,1”,后面的,分号,不能省略*,/,几点说明,:,2026/4/29 周三,23,2.,省略表达式,1,,不对循环变量赋初值。,3.,表达式,

11、2,可省略,加,break,语句跳出循环,.,否则不判断循环条件,将成为”死循环”,.,4.,表达式,3,(修改循环条件)可以省略,将修改循环条件的语句放在在循环体,(,语句,),中,以保证循环能正常结束。,例,:for(sum=0,i=1;i=100;),sum=sum+i;i+;,5.,省略“表达式,1”,和“表达式,3”(,相当于,while,语句,).,for(,;,i=100,;,),sum=sum+i,;,i+,几点说明,:,2026/4/29 周三,24,6.3,个表达式都可以省略,相当于,while,(,1,)。,7.,“表达式,1,”也可以是其他表达式。,8.,表达式,1,和

12、表达式,3,也可以是逗号表达式。,9.,表达式,2,一般为关系、逻辑表达式,也可是数值表达式或字符表达式,只要其值不等于,0,,就执行循环体。,例:,n=?,时,跳出循环?,1,),for(n=1;n-4;n+)s=s+n;,2,),for(n=4;n;n-)s=s+n;,n=4,n=0,几点说明,:,2026/4/29 周三,25,例,7,:输出,1001000,之间同时能被,3,和,5,整除的数及其和。,main(),float s=0;,int i;,for(i=100;i=1000;i+),if(i%3=0&i%5=0),s=s+i;,printf(“%5d”,i);,printf(“

13、s=%fn”,s);,2026/4/29 周三,26,5.4,循环嵌套,循环嵌套,一个循环,(,称为“外循环”,),的循环体内包含另一个,完整,的循环,(,称为“内循环”,),。内循环中还可以包含循环,形成多层循环。(循环嵌套的层数理论上无限制),。,2026/4/29 周三,27,1.,分为内外循环,2.,三种循环语句可以相互嵌套,(1)while(),while(),.,(2)do,do,while();,.,while();,(3)while(),do,while();,.,(4)for(;),do,while();,while(),.,内循环,外循环,内循环,2026/4/29 周三,

14、28,3.,为完全嵌套,即一种循环的头和尾都嵌套在另一个循环里,此为合法嵌套。,4.,若一个循环的头在一个循环里,而尾在循环外,形成交叉循环,为不合法嵌套。,内层循环,2026/4/29 周三,29,例,8,:,main(),int a,b;,for(a=1;a=3;a+),printf(“a=%dn”,a);,for(b=1;b=2;b+),printf(“a=%d,b=%dn”,a,b);,执行:输出结果,a=1,a=1,b=1,a=1,b=2,a=2,a=2,b=1,a=2,b=2,a=3,a=3,b=1,a=3,b=2,2026/4/29 周三,30,说明,嵌套的循环控制变量不能相同,

15、内循环变化快,外循环变化慢,(,外:执行一次,内:从头到尾全部循环一次),正确确定循环体,循环控制变量常与求解的问题挂钩,for(sum=0,i=1;,i=100,;),sum,=sum+i,;i+;,2026/4/29 周三,31,main(),int i,j;,for(i=1;i=9;i+),for(j=1;j=i;j+),printf(“%d*%d=%-3d”,i,j,i*j);,printf(“n”);,一、,1*1=1,2*1=2 2*2=4,3*1=3 3*2=6 3*3=9,二、,i,是被乘数,i=19,j,是乘数,j=1i,“i*j”=i*j,的值,三、,确定内外循环,i,为外

16、循环,,j,为内循环,例,9,打印九九表,一、定义变量,二、确定循环语句,设初值,确定循环条件,循环变量自增,三、循环体,四、输出,2026/4/29 周三,32,5.5,几种循环比较,选择三种循环的一般原则,如果循环次数已知,用,for,如果循环次数未知,用,while,如果循环体至少要执行一次,用,do-while,这只是,“,一般,”,原则,不是,“,规定,”,。,2026/4/29 周三,33,1.,关于循环的控制,循环变量赋初值,While(,表达式),do,语句,for(,式,1,,式,2,,式,3),语句,while(,表达式)语句,循环变量值的改变 循环控制表达式,2026/4

17、/29 周三,34,2.,循环体的执行,while,、,for,语句是先判断条件,循环体可能一次不执行。,dowhile,语句后判断条件,循环至少执行一次。,3.for,循环功能最强。,4.,都可用,break,语句跳出循环,用,continue,语句结束本次循环,而用,if-goto,语句构成的循环就不能用,break,和,continue,进行控制。,2026/4/29 周三,35,5.6 break,语句和,continue,语句,一、,break,语句,1.,格式:,break;,2.,作用:,结束,switch,结构和三种循环,结束本层循环,转到循环的下一条语句,2026/4/29

18、周三,36,例,10,计算,r=1,到,r=10,时的圆面积,直到面积大于,100,为止。,define PI 3.1415926,main(),int r;,float s;,for(r=1;r100)break;,printf(r=%d,s=%fn,r,s);,1.,定义变量,2.,确定循环语句(,for),1,)设初值,r=1,2,)确定循环条件,r100,,退出,输出,2026/4/29 周三,37,运行结果:,r=1 s=3.1415930,r=2 s=12.566370,r=3 s=28.274334,r=4 s=50.265480,r=5 s=78.539818,2026/4/2

19、9 周三,38,使用,break,语句应注意如下几个问题:,(,1,),break,语句只能用于,switch,结构或循环结构,并总是作为,if,语句的内嵌语句,例,if(),break;,2026/4/29 周三,39,(,2,)在循环语句嵌套使用的情况下,,break,语句只能跳出(或终止)它所在的循环,而不能同时跳出(或终止)多层循环,如:,for(),for(),break;,2026/4/29 周三,40,二、,continue,语句,格式:,continue;,作用:,是结束本次循环,即跳过循环体中下面尚未执行的语句,直接进行下一次是否执行循环的判定。,过程:,终止当前这一轮循环,

20、即跳过循环体中位于,continue,后面的语句而立即开始下一轮循环;对于,while,和,do-while,来讲,这意味着立即执行条件测试部分,而对于,for,语句来讲,则意味着立即求解表达式,3,。,2026/4/29 周三,例,12,把,100,到,150,之间的不能被,7,整除的数及其和输出。,main(),int i,s=0;,for(i=100;i=1e-6,1)pi=pi+t;,2)f=-f;,3)i=i+2;,4)t=f*1.0/i,3.pi=pi*4,5.,输出,#include“math.h”,main(),int i=1,f=1;,float t=1;pi=0;,whil

21、e(fabs(t)=1e-6),pi=pi+t;,f=-f;,i=i+2;,t=f*1.0/i;,pi=pi*4;,printf(pi=%10.6fn,pi);,2026/4/29 周三,44,例,14,求,40,项,Fibonacci,数列:,f1=1 (n=1),f2=1 (n=2),fn=fn-1+fn-2 (n3),1 1 2 3 5 8 13.,f1,f2,f1=f1+f2,=1+1,f2=f2+f1,=2+1,f1=f1+f2,=2+3,2026/4/29 周三,算法,:,1.,定义变量,f1=1,f2=1,i;,2.,输出,f1,f2;,3.,进行循环,每次计算出两项并输出,f1

22、f1+f2,f2=f1+f2,main(),long int f1=1,f2=1;,/*,长整型数并已知数列的前两个初值*,/,int i;,printf(%12ld%12ld,f1,f2);,for(i=1;i=20;i+),f1=f2+f1;,f2=f1+f2;,printf(%12ld%12ld,f1,f2);,/*,输出长整型数*,/,if(i%2=0),printf(n);,/*,控制输出格式*,/,2026/4/29 周三,46,只有行数有变化,所以只定义,一个变量,a,从,15,。用一重循环,控制行数即可。,main(),int a;,for(a=1;a=5;a+),print

23、f(“*n”);,2026/4/29 周三,47,分析,:,1.,每行的起始位置不同,空格数递减,1;,2.,每行的字符数同,3.,有两个变量,行:,15,;,空格:,40,;,4.,用循环嵌套实现,外循环控制输出行数,内循环控制输出空格数,行(,a,),:1 2 3 4 5,空格(,b,),:4 3 2 1 0,a+b=5,b=5-a,b:15-a,2026/4/29 周三,48,main(),int a,b;,for(a=1;a=5;a+),for(b=1;b=5-a;b+),printf(“”);,printf(“*n”);,2026/4/29 周三,49,行(,i,),:1 2 3 4 5,空(,j,),:4 3 2 1 0,*(k):1 3 5 7 9,j=5-i;,k=(2*i)-1,分析:,1.,定义变量,i,j,k;,2.,每行的起始位置不同,空格数:,j=5-i;,3.,每行的字符数不同,字符数:,k=(2*i)-1,4.,用循环嵌套实现,确定内外循环,外循环控制行数,两个并列内循环控制空格数和字符数,2026/4/29 周三,50,main(),int i,j,k;,for(i=1;i=5;i+),for(j=1;j=5-i;j+),printf(“);,for(k=1;k=2*i-1;k+),printf(“*”);,printf(“n”);,

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服