版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、循环结构,2,分别写出运行结果,switch(day) case 1: System.out.println(法国大餐); break; case 2: case 4: System.out.println(满汉全席); break; case 7: if (weekOfMonth = 1) System.out.println(苹果餐); else System.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
3、.out.println(我是最棒的!); System.out.println(我是最棒的!); System.out.println(我是最棒的!);,int i = 1; while ( i = 100 ) System.out.println( 我能行! ); i +; ,i=10000,我是最棒的!);,没有使用循环结构,使用while循环,完整代码1,完整代码2,演示示例2:使用循环结构解决问题1,6,什么是循环,打印50份试卷,10000米赛跑,旋转的车轮,循环结构的特点,锲而不舍地学习,生活中的循环,7,什么是while循环,特点:先判断,再执行,while ( 循环条件 )
4、循环操作 ,符合条件,循环继续执行;否则,循环退出,循环中被重复执行的操作,int i = 1; while ( i = 30 ) System.out.println(我能行!); i +; ,编码规范:缩进、换行,8,2、如何用程序描述下面这个故事呢?,为了备战,令狐冲锲而不舍地练习,盈盈严格把关 “盈盈,怎么样,可以了吗?” “不行,高音部分唱得还不是很好,钢琴还要继续练啊 !” 没有听到“很棒”的评价,看来革命尚未成功, 令狐冲并不气馁: 早上5点练声,上午练钢琴,下午到声乐老师家练习唱歌,晚上练习舞蹈基本功。,循环条件,循环操作,使用while循环的步骤 1、分析循环条件 2、分析循
5、环操作(重复执行的代码) 3、寻找循环变量改变的规律,怎样使用while循环3-1,4、套用while语法写出代码 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(晚上练习舞蹈基本功!);
6、 System.out.print(表演得怎样 ?(y/n):); answer = input.next(); System.out.println(圆满完成 !);,循环条件,循环操作,比较两个String类型的值是否相等,演示示例3:使用while循环结构,10,怎样使用while循环3-3,3、录入班级人数和学员成绩,计算班级学员的平均成绩,循环条件:目前录入的成绩数目小于总人数 循环操作:录入学生成绩,并累加求和 改变循环变量,演示示例4:使用while循环结构,while(i=stuNum) System.out.print(请输入学号 + i + 的成绩:); score = i
7、nput.nextInt(); sum = sum + score; i+; avg = sum / stuNum ;,11,计算1+2+3+ +97+98+99+100=?,提示:1、循环条件是什么? 2、循环操作是什么? 3、int sum = 0; int i = 1; while ,参考代码,实验,12,while循环常见问题3-1,/* 打印4次“欢迎ACCP学员” */ public static void main(String args) int i = 0; while (i 4 ) System.out.println(欢迎ACCP学员); i + ; ,永远都不会退出的循
8、环称为死循环,循环一直执行,不会退出,哪里出错了?,13,while循环常见问题3-2,/* 打印4次“欢迎ACCP学员” */ public static void main(String args) int i= 1; while ( i 4 ) System.out.println(欢迎ACCP学员); i +; ,i = 4,只打印了三次 ,哪里出错了?,注意检查循环次数是否满足需求,14,while循环常见问题3-3,/* 打印4次“欢迎ACCP学员” */ public static void main(String args) int i = 0; while ( i 5 ) S
9、ystem.out.println(欢迎ACCP学员); i +; ,注意:如果一开始条件就不满足,while循环一次都不执行,i 5,一次都没有打印,哪里出错了?,15,2010年学校培养学生8万人,每年增长25%,请问按此增长速度,到哪一年培训学生人数将达到20万人?,提示:1、循环条件和循环操作分别是什么? 2、int year = 2010; double students = 80000; while 3、2015年培训学生数量 = 80000 * (1 + 0.25 ),参考代码,小结,16,do-while循环,4、如何用程序讲述下面的故事?,苦练半年,眼看大赛在即, 盈盈提议:
10、彩排一次,如果很令人满意,以后就不用彩排了,否则每天都要彩排, 直到现场表现让她满意为止! 他能否用动听的歌声震撼盈盈,用美妙的钢琴声博得赞赏呢?,do 循环操作 while ( 循环条件 );,while (循环条件) 循环操作 ,while循环先判断,再执行不适合描述此故事,?,17,什么是do-while循环,do 循环操作 while ( 循环条件 );,先执行一遍循环操作,符合条件,循环继续执行;否则,循环退出,特点:先执行,再判断,18,怎样使用do-while循环2-1,do System.out.println(唱歌 !); System.out.println(演奏肖邦钢琴曲
11、 !); System.out.print(可以了吗 ?(y/n):); answer = input.next(); while (!answer.equals(y) ) ; System.out.println(大功告成 !);,循环条件,先执行一遍循环操作,演示示例5:使用do-while循环结构,19,怎样使用do-while循环2-2,5、连续录入学生姓名,输入“q”则系统退出,String name ; Scanner input = new Scanner(System.in); do System.out.print(请输入学生姓名:); name = input.next()
12、; while ( !name.equals(q) ); System.out.println(程序结束);,演示示例6:使用do-while循环结构,20,while循环和do-while循环的区别 语法不同 初始情况不满足循环条件时 while循环:一次都不会执行 do-while循环:不管任何情况都至少执行一次,do 循环操作 while( 循环条件 );,while ( 循环条件 ) 循环操作 ,先判断,再执行,先执行,再判断,比较while和do-while,21,小结2,使用do-while实现:输出摄氏温度与华氏温度的对照表,要求它从摄氏温度0度到250度,每隔20度为一项,对照
13、表中的条目不超过10条。,参考代码,提示:1、循环操作:计算摄氏温度,并输出对照条目 2、循环条件:条目=10 while(i100) System.out.println(我最棒); i+; ,for(int i=0;i100;i+) System.out.println(我最棒); ,for比while更简洁,使用for循环,使用while循环,34,for循环的语法和执行顺序,什么是for循环,for( ; ; ) ; ,条件为true,循环体被执行,for ( int i = 0 ; i 100 ; i+ ) System.out.println(我最棒); ,代码规范:格式对齐、代码
14、的缩进,表达式1,表达式2,表达式3,循环操作,参数初始化,条件判断,更新循环变量,1,2,4,3,35,如何使用for循环3-1,1、循环录入某学生的5门课成绩,计算平均分,循环次数:5 循环条件:循环的次数不足5,继续循环 循环操作:录入成绩,计算成绩之和,使用for循环结构的步骤 1、分析循环条件和循环操作 2、套用for语法写出代码 3、检查循环是否能够退出,结合问题1,36,如何使用for循环3-2,/省略声明变量 for(int i = 0; i 5; i+) /循环5次录入5门课成绩 System.out.print(请输入5门功课中第 + (i+1) + 门课的成绩: ); s
15、core = input.nextInt(); sum = sum + score; avg = sum / 5; /计算平均分 System.out.println(name + 的平均分是: + avg);,初始值:i= 0 循环条件:i5 循环变量改变:i+,循环操作执行5次,演示示例1:使用for循环结构,完整代码,37,如何使用for循环3-3,2、输出如图所示加法表,for( int i = 0, j = val; i=val; i+, j- ) System.out.println(i + + + j + = + (i+j); ,1、循环初始化:i = 0;j = 输入值 2、循
16、环条件:i=输入值 3、循环操作:计算i+j 4、循环变量的改变:i+,j-,完整代码,表达式3可以是用“,”隔开的多 个表达式,运算顺序从左到右,表达式1中可以声明多个同一 类型的值并赋值,用“,”隔开,演示示例2:使用for循环结构,38,for循环常见问题4-1,for(;i10;i+) System.out.println(这是 +i); ,int i=0;,编译错误: 变量 i 没有初始化,for( ; ; ) ; ,不能省略,可省略,表达式1省略,循环变量 的初始值在for语句之前 由赋值语句取得,39,for循环常见问题4-2,for(int i=0;i+) System.out
17、.println(这是 +i); ,编译正确,但是缺少 循环条件,造成死循环,40,for循环常见问题4-3,for(int i=0;i10;) System.out.println(这是 +i); ,i+;,省略表达式3,在循环体内应设法改 变循环变量的值以结束循环,编译通过,但是循环变量的值无变化,造成死循环,41,for循环常见问题4-4,for(;) System.out.println(这是测试); ,表达式全省略,无条件判断,循环变量无改变, 应在循环体内设法结束循环,否则会造成死循环,死循环,42,小结1,求1100之间不能被3整除的数之和 (使用for循环结构),参考代码,43
18、,为什么需要break语句,int i = 2; switch(i) case 1: System.out.println(星期一); break; case 2: System.out.println(星期二); break; /其他语句,遇到break,立即跳出switch语句,回顾break用于switch语句,描述4000米长跑比赛,for (int i = 0; i10; i+) 跑400米; ,if(不能坚持) break; /退出比赛 ,第8圈, 快累死了 我要退出,44,什么是break语句,break:改变程序控制流 用于do-while、while、for中时,可跳出循环而
19、执行循环后面的语句,while() break; ,跳出整个循环,break通常在循环中与条件语句一起使用,45,如何使用break语句2-1,3、循环录入某学生5门课的成绩并计算平均分,如果某分数录入为负,停止录入并提示录入错误,循环录入成绩,判断录入正确性:录入错误,使用break语句立刻跳出循环;否则,累加求和,演示示例3:使用break语句,46,如何使用break语句2-2, for(int i = 0; i 5; i+) /循环5次录入5门课成绩 System.out.print(请输入5门功课中第 + (i+1) + 门课的成绩: ); score = input.nextInt
20、(); /从控制台接收数据 if(score 0) wrong = false; /出错标识 break; /退出循环 sum = sum + score; 循环外的语句,对录入的分数进行判断,如果小于0,标记出错状态,并立即跳出整个for循环,问题3 完整代码演示,47,110之间的整数相加,得到累加值大于20的当前数,1、使用循环进行累加,从1到10 2、判断累加值是否大于20 3、如果大于20,则跳出循环,并打印当前值,/定义一个变量,进行累加 int sum=0; for(int i=1;i 20 ) System.out.print(当前数是:+i); break; ,参考代码,小结
21、2,演示运行效果,48,什么是continue语句,continue :只能用在循环里 continue 作用:跳过循环体中剩余的语句而执行下一次循环,while() continue; ,继续下一次循环,通常与条件语句一起使用,加速循环,for(int i = 0; i10;i+) 跑400米; if(!口渴) continue; /不喝水,继续跑 接过水壶,喝水; ,示例,49,为什么需要continue语句,4、循环录入Java课的学生成绩,统计分数大于等于 80分的学生比例,1、通过循环,获得分数大于等于80分的学生人数num 2、判断:如果成绩80,不执行num+,直接进入下一次循环
22、,50,如何使用continue,for(int i = 0; i total; i+) System.out.print(请输入第 + (i+1) + 位学生的成绩: ); score = input.nextInt(); if(score 80) continue; num+; /大于等于80分的人数 double rate = (double) num / total * 100; System.out.println(80分以上的学生所占的比例为:+ rate + %);,对录入的分数进行判断,如果小于80,跳出本次循环,执行下一次循环,问题4 完整代码,51,1、使用循环进行累加,循
23、环的范围是从1至10 2 、判断当前数是否为偶数 3 、如果为奇数跳过,执行下一个循环,如果为偶数,进行累加,int sum=0; /定义一个变量,进行累加 for(int i=1;i=10;i+) if( i % 2 = 1) continue; /如果i为奇数,结束本次循环,进行下一次循环 sum=sum+i; System.out.print(1-10之间的偶数和是:+sum);,小结3,求110之间的所有偶数和,完整代码,演示运行效果,52,1、使用循环进行累加,循环的范围是从1至10 2 、判断当前数是否为偶数 3 、如果为奇数跳过,执行下一个循环,如果为偶数,进行累加,while(
24、true) System.out.print(“请输入密码:”); int mima=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语句终止某个循环,程序跳转到
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 石河子大学《园艺通论》2023-2024学年第一学期期末试卷
- 洞穴奇案读书分享
- 石河子大学《跆拳道》2021-2022学年第一学期期末试卷
- 石河子大学《模拟电子技术》2021-2022学年期末试卷
- 石河子大学《教育网站设计与开发》2023-2024学年第一学期期末试卷
- 沈阳理工大学《体能与营养》2023-2024学年第一学期期末试卷
- 沈阳理工大学《机械设计学》2021-2022学年第一学期期末试卷
- 沈阳理工大学《高等代数》2021-2022学年第一学期期末试卷
- 沈阳理工大学《城市设计》2021-2022学年第一学期期末试卷
- 沈阳理工大学《材料成型工艺与装备》2023-2024学年第一学期期末试卷
- 化工劳动纪律培训课件
- 中医培训课件:《拔罐技术》
- 筋伤概论-骨伤科
- 惠安女课件完
- 盐酸采购和储存和使用安全管理
- 2022信息安全技术服务器安全技术要求和测评准则
- 健身及体育运动服务领域:第一体育企业组织架构及部门职责
- 安全保卫常识课件
- 乳腺癌放疗后的皮肤护理课件
- 《培训与开发 》课件
- 信赖性测试一览表-
评论
0/150
提交评论