java循环结构PPT课件_第1页
java循环结构PPT课件_第2页
java循环结构PPT课件_第3页
java循环结构PPT课件_第4页
java循环结构PPT课件_第5页
已阅读5页,还剩54页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、循环结构,.,2,分别写出运行结果,switch(day)case1:System.out.println(法国大餐);break;case2:case4:System.out.println(满汉全席);break;case7:if(weekOfMonth=1)System.out.println(苹果餐);elseSystem.out.println(香蕉餐);break;,法国大餐,香蕉餐,回顾,.,3,理解循环的含义会使用while循环结构会使用do-while循环结构会使用for循环结构会使用调试解决简单的程序错误,本章目标,.,4,1、盈盈为了考验令狐冲夺冠的决心,要他说一百遍“我

2、能行!”,System.out.println(第1次说:我能行!);System.out.println(第2次说:我能行!);System.out.println(第100次说:我能行!);,100条,2、盈盈要他说10000遍“我是最棒的!”,怎么办?,为什么需要循环2-1,演示完整代码,.,5,为什么需要循环2-2,System.out.println(我是最棒的!);System.out.println(我是最棒的!);System.out.println(我是最棒的!);System.out.println(我是最棒的!);System.out.println(我是最棒的!);Sy

3、stem.out.println(我是最棒的!);System.out.println(我是最棒的!);,inti=1;while(i=100)System.out.println(我能行!);i+;,i=10000,我是最棒的!);,没有使用循环结构,使用while循环,完整代码1,完整代码2,演示示例2:使用循环结构解决问题1,.,6,什么是循环,打印50份试卷,10000米赛跑,旋转的车轮,循环结构的特点,锲而不舍地学习,生活中的循环,.,7,什么是while循环,特点:先判断,再执行,while(循环条件)循环操作,符合条件,循环继续执行;否则,循环退出,循环中被重复执行的操作,int

4、i=1;while(i=30)System.out.println(我能行!);i+;,编码规范:缩进、换行,.,8,2、如何用程序描述下面这个故事呢?,为了备战,令狐冲锲而不舍地练习,盈盈严格把关“盈盈,怎么样,可以了吗?”“不行,高音部分唱得还不是很好,钢琴还要继续练啊!”没有听到“很棒”的评价,看来革命尚未成功,令狐冲并不气馁:早上5点练声,上午练钢琴,下午到声乐老师家练习唱歌,晚上练习舞蹈基本功。,循环条件,循环操作,使用while循环的步骤1、分析循环条件2、分析循环操作(重复执行的代码)3、寻找循环变量改变的规律,怎样使用while循环3-1,4、套用while语法写出代码5、检查

5、循环是否能够退出,.,9,怎样使用while循环3-2,System.out.print(表演得怎么样?(y/n):);answer=input.next();while(!answer.equals(y)System.out.println(早上5点开始练声!);System.out.println(上午练习钢琴!);System.out.println(下午到声乐老师家练习唱歌!);System.out.println(晚上练习舞蹈基本功!);System.out.print(表演得怎样?(y/n):);answer=input.next();System.out.println(圆满完成

6、!);,循环条件,循环操作,比较两个String类型的值是否相等,演示示例3:使用while循环结构,.,10,怎样使用while循环3-3,3、录入班级人数和学员成绩,计算班级学员的平均成绩,循环条件:目前录入的成绩数目小于总人数循环操作:录入学生成绩,并累加求和改变循环变量,演示示例4:使用while循环结构,while(i=stuNum)System.out.print(请输入学号+i+的成绩:);score=input.nextInt();sum=sum+score;i+;avg=sum/stuNum;,.,11,计算1+2+3+97+98+99+100=?,提示:1、循环条件是什么?

7、2、循环操作是什么?3、intsum=0;inti=1;while,参考代码,实验,.,12,while循环常见问题3-1,/*打印4次“欢迎ACCP学员”*/publicstaticvoidmain(Stringargs)inti=0;while(i4)System.out.println(欢迎ACCP学员);i+;,永远都不会退出的循环称为死循环,循环一直执行,不会退出,哪里出错了?,.,13,while循环常见问题3-2,/*打印4次“欢迎ACCP学员”*/publicstaticvoidmain(Stringargs)inti=1;while(i4)System.out.println

8、(欢迎ACCP学员);i+;,i5)System.out.println(欢迎ACCP学员);i+;,注意:如果一开始条件就不满足,while循环一次都不执行,i5,一次都没有打印,哪里出错了?,.,15,2010年学校培养学生8万人,每年增长25%,请问按此增长速度,到哪一年培训学生人数将达到20万人?,提示:1、循环条件和循环操作分别是什么?2、intyear=2010;doublestudents=80000;while3、2015年培训学生数量=80000*(1+0.25),参考代码,小结,.,16,do-while循环,4、如何用程序讲述下面的故事?,苦练半年,眼看大赛在即,盈盈提议

9、:彩排一次,如果很令人满意,以后就不用彩排了,否则每天都要彩排,直到现场表现让她满意为止!他能否用动听的歌声震撼盈盈,用美妙的钢琴声博得赞赏呢?,do循环操作while(循环条件);,while(循环条件)循环操作,while循环先判断,再执行不适合描述此故事,?,.,17,什么是do-while循环,do循环操作while(循环条件);,先执行一遍循环操作,符合条件,循环继续执行;否则,循环退出,特点:先执行,再判断,.,18,怎样使用do-while循环2-1,doSystem.out.println(唱歌!);System.out.println(演奏肖邦钢琴曲!);System.out

10、.print(可以了吗?(y/n):);answer=input.next();while(!answer.equals(y);System.out.println(大功告成!);,循环条件,先执行一遍循环操作,演示示例5:使用do-while循环结构,.,19,怎样使用do-while循环2-2,5、连续录入学生姓名,输入“q”则系统退出,Stringname;Scannerinput=newScanner(System.in);doSystem.out.print(请输入学生姓名:);name=input.next();while(!name.equals(q);System.out.pr

11、intln(程序结束);,演示示例6:使用do-while循环结构,.,20,while循环和do-while循环的区别语法不同初始情况不满足循环条件时while循环:一次都不会执行do-while循环:不管任何情况都至少执行一次,do循环操作while(循环条件);,while(循环条件)循环操作,先判断,再执行,先执行,再判断,比较while和do-while,.,21,小结2,使用do-while实现:输出摄氏温度与华氏温度的对照表,要求它从摄氏温度0度到250度,每隔20度为一项,对照表中的条目不超过10条。,参考代码,提示:1、循环操作:计算摄氏温度,并输出对照条目2、循环条件:条目

12、=10while(i100)System.out.println(我最棒);i+;,for(inti=0;i100;i+)System.out.println(我最棒);,for比while更简洁,使用for循环,使用while循环,.,34,for循环的语法和执行顺序,什么是for循环,for(;);,条件为true,循环体被执行,for(inti=0;i100;i+)System.out.println(我最棒);,代码规范:格式对齐、代码的缩进,表达式1,表达式2,表达式3,循环操作,参数初始化,条件判断,更新循环变量,1,2,4,3,.,35,如何使用for循环3-1,1、循环录入某学

13、生的5门课成绩,计算平均分,循环次数:5循环条件:循环的次数不足5,继续循环循环操作:录入成绩,计算成绩之和,使用for循环结构的步骤1、分析循环条件和循环操作2、套用for语法写出代码3、检查循环是否能够退出,结合问题1,.,36,如何使用for循环3-2,/省略声明变量for(inti=0;i5;i+)/循环5次录入5门课成绩System.out.print(请输入5门功课中第+(i+1)+门课的成绩:);score=input.nextInt();sum=sum+score;avg=sum/5;/计算平均分System.out.println(name+的平均分是:+avg);,初始值:

14、i=0循环条件:i5循环变量改变:i+,循环操作执行5次,演示示例1:使用for循环结构,完整代码,.,37,如何使用for循环3-3,2、输出如图所示加法表,for(inti=0,j=val;i=val;i+,j-)System.out.println(i+j+=+(i+j);,1、循环初始化:i=0;j=输入值2、循环条件:i=输入值3、循环操作:计算i+j4、循环变量的改变:i+,j-,完整代码,表达式3可以是用“,”隔开的多个表达式,运算顺序从左到右,表达式1中可以声明多个同一类型的值并赋值,用“,”隔开,演示示例2:使用for循环结构,.,38,for循环常见问题4-1,for(;i

15、10;i+)System.out.println(这是+i);,inti=0;,编译错误:变量i没有初始化,for(;);,不能省略,可省略,表达式1省略,循环变量的初始值在for语句之前由赋值语句取得,.,39,for循环常见问题4-2,for(inti=0;i+)System.out.println(这是+i);,编译正确,但是缺少循环条件,造成死循环,.,40,for循环常见问题4-3,for(inti=0;i10;)System.out.println(这是+i);,i+;,省略表达式3,在循环体内应设法改变循环变量的值以结束循环,编译通过,但是循环变量的值无变化,造成死循环,.,41

16、,for循环常见问题4-4,for(;)System.out.println(这是测试);,表达式全省略,无条件判断,循环变量无改变,应在循环体内设法结束循环,否则会造成死循环,死循环,.,42,小结1,求1100之间不能被3整除的数之和(使用for循环结构),参考代码,.,43,为什么需要break语句,inti=2;switch(i)case1:System.out.println(星期一);break;case2:System.out.println(星期二);break;/其他语句,遇到break,立即跳出switch语句,回顾break用于switch语句,描述4000米长跑比赛,f

17、or(inti=0;i10;i+)跑400米;,if(不能坚持)break;/退出比赛,第8圈,快累死了我要退出,.,44,什么是break语句,break:改变程序控制流用于do-while、while、for中时,可跳出循环而执行循环后面的语句,while()break;,跳出整个循环,break通常在循环中与条件语句一起使用,.,45,如何使用break语句2-1,3、循环录入某学生5门课的成绩并计算平均分,如果某分数录入为负,停止录入并提示录入错误,循环录入成绩,判断录入正确性:录入错误,使用break语句立刻跳出循环;否则,累加求和,演示示例3:使用break语句,.,46,如何使用

18、break语句2-2,for(inti=0;i5;i+)/循环5次录入5门课成绩System.out.print(请输入5门功课中第+(i+1)+门课的成绩:);score=input.nextInt();/从控制台接收数据if(score0)wrong=false;/出错标识break;/退出循环sum=sum+score;循环外的语句,对录入的分数进行判断,如果小于0,标记出错状态,并立即跳出整个for循环,问题3完整代码演示,.,47,110之间的整数相加,得到累加值大于20的当前数,1、使用循环进行累加,从1到102、判断累加值是否大于203、如果大于20,则跳出循环,并打印当前值,/

19、定义一个变量,进行累加intsum=0;for(inti=1;i20)System.out.print(当前数是:+i);break;,参考代码,小结2,演示运行效果,.,48,什么是continue语句,continue:只能用在循环里continue作用:跳过循环体中剩余的语句而执行下一次循环,while()continue;,继续下一次循环,通常与条件语句一起使用,加速循环,for(inti=0;i10;i+)跑400米;if(!口渴)continue;/不喝水,继续跑接过水壶,喝水;,示例,.,49,为什么需要continue语句,4、循环录入Java课的学生成绩,统计分数大于等于80

20、分的学生比例,1、通过循环,获得分数大于等于80分的学生人数num2、判断:如果成绩80,不执行num+,直接进入下一次循环,.,50,如何使用continue,for(inti=0;itotal;i+)System.out.print(请输入第+(i+1)+位学生的成绩:);score=input.nextInt();if(score80)continue;num+;/大于等于80分的人数doublerate=(double)num/total*100;System.out.println(80分以上的学生所占的比例为:+rate+%);,对录入的分数进行判断,如果小于80,跳出本次循环,执

21、行下一次循环,问题4完整代码,.,51,1、使用循环进行累加,循环的范围是从1至102、判断当前数是否为偶数3、如果为奇数跳过,执行下一个循环,如果为偶数,进行累加,intsum=0;/定义一个变量,进行累加for(inti=1;i=10;i+)if(i%2=1)continue;/如果i为奇数,结束本次循环,进行下一次循环sum=sum+i;System.out.print(1-10之间的偶数和是:+sum);,小结3,求110之间的所有偶数和,完整代码,演示运行效果,.,52,1、使用循环进行累加,循环的范围是从1至102、判断当前数是否为偶数3、如果为奇数跳过,执行下一个循环,如果为偶数

22、,进行累加,while(true)System.out.print(“请输入密码:”);intmima=in.nextInt();if(mima!=123456)continue;/如果密码不是123456,结束本次循环,进行下一次循环break;System.out.println(“密码正确!”);,小结3,编程完成输入密码程序段。要求:密码为123456,输入不对继续输入直到输入正确为止,演示运行效果,.,53,对比break和continue,对比方法:通过Eclipse单步运行,观察程序执行顺序变量值的变化观察案例案例1:110之间的整数相加,得到累加值大于20的当前数案例2:求110之间的所有偶数和,.,54,对比break和continue,使用场合:break可用于switch结构和循环结构中continue只能用于循环结构中作用(循环结构中)break语句终止某个循环,程序跳转到循环块外的下一条语句;continu

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论