版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1循环结构(二)循环结构(二)回顾回顾 while循环和循环和do-while循环结构之间的异同?循环结构之间的异同?代码填空代码填空: 实现整数反转实现整数反转程序调试有哪几个步骤?程序调试有哪几个步骤?public class huiwen public static void main(String args) int val = 12345; int r_digit; System.out.print(反转后的整数是:反转后的整数是:); while(_) _; _; _; while(val!=0) r_digit = val %10; System.out.print(r_digi
2、t); val = val /10; 完整案例完整案例本章任务本章任务升级升级Java应用程序应用程序“HelloMipo”:循环录入学员成绩,计算结业平均分循环录入学员成绩,计算结业平均分成绩录入有效性检测成绩录入有效性检测统计优秀成绩的学员比例统计优秀成绩的学员比例 学会使用学会使用for循环结构循环结构学会在程序中使用学会在程序中使用break和和continue熟练使用熟练使用Eclipse调试工具进行程序调试调试工具进行程序调试 本章目标本章目标为什么使用为什么使用for循环循环2-1回顾问题回顾问题1:令狐冲说一百遍:令狐冲说一百遍“我最棒我最棒” 回顾问题回顾问题2:根据人数和成
3、绩,计算平均成绩:根据人数和成绩,计算平均成绩解决解决: 使用使用while循环循环共同点:确定的循环次数共同点:确定的循环次数 更优解决更优解决: for循环循环结构结构为什么使用为什么使用for循环循环2-2 int i=0;while(i100) System.out.println(我最棒我最棒); i+; for(int i=0;i100;i+) System.out.println(我最棒我最棒); for比比while更简洁更简洁while循环结构循环结构for循环结构循环结构for循环的语法和执行顺序循环的语法和执行顺序什么是什么是for循环循环for( ; ; ) ; 条件为
4、条件为true 循环体被执行循环体被执行 for ( int i = 0 ; i 100 ; i+ ) System.out.println(我最棒我最棒); 代码规范:代码规范:格式对齐、代码的缩进格式对齐、代码的缩进 表达式表达式1 表达式表达式2 表达式表达式3 循环操作循环操作 参数初始化参数初始化条件判断条件判断更新循环变量更新循环变量1243如何使用如何使用for循环循环3-11、循环录入某学员、循环录入某学员S1的的5门课成绩,计算平均分门课成绩,计算平均分循环次数循环次数:5循环条件循环条件:循环的次数不足:循环的次数不足5,继续循环,继续循环循环操作循环操作:录入成绩,计算:
5、录入成绩,计算成绩之和成绩之和使用使用for循环结构的步骤循环结构的步骤1、分析循环条件和循环操作、分析循环条件和循环操作2、套用、套用for语法写出代码语法写出代码3、检查循环是否能够退出、检查循环是否能够退出结合问题结合问题1如何使用如何使用for循环循环3-2 /省略声明变量省略声明变量 for(int i = 0; i 5; i+) /循环循环5次录入次录入5门课成绩门课成绩 System.out.print(请输入请输入5门功课中第门功课中第 + (i+1) + 门课的成绩:门课的成绩: ); score = input.nextInt(); sum = sum + score; a
6、vg = sum / 5; /计算平均分计算平均分 System.out.println(name + 的平均分是:的平均分是: + avg);初始值:初始值:i= 0循环条件:循环条件:i5循环变量改变:循环变量改变:i+循环操作执行循环操作执行5次次演示示例演示示例1:使用:使用for循环结构循环结构完整代码完整代码如何使用如何使用for循环循环3-3 2、输出如图所示加法表、输出如图所示加法表for( int i = 0, j = val; i=val; i+, j- ) System.out.println(i + + + j + = + (i+j); 1、循环初始化:、循环初始化:i
7、 = 0;j = 输入值输入值2、循环条件:、循环条件:i=输入值输入值3、循环操作:计算、循环操作:计算i+j4、循环变量的改变:、循环变量的改变:i+,j-完整代码完整代码表达式表达式3可以是用可以是用“,”隔开的多隔开的多个表达式,运算顺序从左到右个表达式,运算顺序从左到右表达式表达式1中可以声明多个同一中可以声明多个同一类型的值并赋值,用类型的值并赋值,用“,”隔开隔开演示示例演示示例2:使用:使用for循环结构循环结构for循环常见问题循环常见问题4-1for(;i10;i+) System.out.println(这是这是 +i);int i=0;编译错误:编译错误:变量变量 i
8、没有初始化没有初始化for( ; ; ) ; 不能省略不能省略 可省略可省略表达式表达式1省略,循环变量省略,循环变量的初始值在的初始值在for语句之前语句之前由赋值语句取得由赋值语句取得for循环常见问题循环常见问题4-2for(int i=0;i+) System.out.println(这是这是 +i);编译正确,但是缺少编译正确,但是缺少循环条件,造成死循环循环条件,造成死循环for循环常见问题循环常见问题4-3for(int i=0;i10;) System.out.println(这是这是 +i); i+;省略表达式省略表达式3,在循环体内应设法改,在循环体内应设法改变循环变量的值
9、以结束循环变循环变量的值以结束循环编译通过,但是循环变量的编译通过,但是循环变量的值无变化,造成死循环值无变化,造成死循环for循环常见问题循环常见问题4-4for(;) System.out.println(这是测试这是测试);表达式全省略,无条件判断,循环变量无改变,表达式全省略,无条件判断,循环变量无改变,应在循环体内设法结束循环,否则会造成死循环应在循环体内设法结束循环,否则会造成死循环死循环死循环小结小结1 求求1100之间不能被之间不能被3整除的数之和整除的数之和 (使用(使用for循环结构)循环结构) 参考代码参考代码为什么需要为什么需要break语句语句int i = 2;sw
10、itch(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圈,圈,快累死了快累死了我要退出我要退出什么是什么是break语句语句break:改变程序控制流:改变程序控制流用
11、于用于do-while、while、for中时,可跳出循环而执行循环后面的语句中时,可跳出循环而执行循环后面的语句while() break; 跳出整个循环跳出整个循环break通常在循环中与通常在循环中与条件语句一起使用条件语句一起使用如何使用如何使用break语句语句2-1 3、循环录入某学生、循环录入某学生5门课的成绩并计算平均分,如果门课的成绩并计算平均分,如果某分数录入为负,停止录入并提示录入错误某分数录入为负,停止录入并提示录入错误循环录入成绩,判断录入正确性:循环录入成绩,判断录入正确性:录入错误,使用录入错误,使用break语句立刻跳语句立刻跳出循环;否则,累加求和出循环;否则
12、,累加求和演示示例演示示例3:使用:使用break语句语句如何使用如何使用break语句语句2-2for(int i = 0; i 5; i+) /循环循环5次录入次录入5门课成绩门课成绩 System.out.print(请输入请输入5门功课中第门功课中第 + (i+1) + 门课的成绩:门课的成绩: ); score = input.nextInt(); /从控制台接收数据从控制台接收数据 if(score 0) wrong = false; /出错标识出错标识 break; /退出循环退出循环 sum = sum + score;循环外的语句循环外的语句对录入的分数进行判断,如对录入的分
13、数进行判断,如果小于果小于0,标记出错状态,并,标记出错状态,并立即跳出整个立即跳出整个for循环循环问题问题3完整代码演示完整代码演示 110之间的整数相加,得到累加值大于之间的整数相加,得到累加值大于20的当前数的当前数1、使用循环进行累加,从、使用循环进行累加,从1到到102、判断累加值是否大于、判断累加值是否大于203、如果大于、如果大于20,则跳出循环,并打印当前值,则跳出循环,并打印当前值/定义一个变量,进行累加定义一个变量,进行累加 int sum=0; for(int i=1;i 20 ) System.out.print(当前数是当前数是:+i); break; 参考代码参考
14、代码小结小结2演示运行效果演示运行效果为什么需要为什么需要continue语句语句 4、循环录入、循环录入Java课的学生成绩,统计分数大于等于课的学生成绩,统计分数大于等于 80分的学生比例分的学生比例1、通过循环,获得分数大、通过循环,获得分数大于等于于等于80分的学生人数分的学生人数num2、判断:如果成绩、判断:如果成绩80,不,不执行执行num+,直接进入下一,直接进入下一次循环次循环什么是什么是continue语句语句continue :只能用在循环里:只能用在循环里continue 作用:跳过循环体中剩余的语句而执行下一次循环作用:跳过循环体中剩余的语句而执行下一次循环while
15、() continue; 继续下一次循环继续下一次循环通常与条件语句一起使通常与条件语句一起使用,加速循环用,加速循环for(int i = 0; i10;i+) 跑跑400米;米; if(!口渴)(!口渴) continue; /不喝水,继续跑不喝水,继续跑 接过水壶,喝水接过水壶,喝水;示例示例如何使用如何使用continue for(int i = 0; i total; i+) System.out.print(请输入第请输入第 + (i+1) + 位学生的成绩:位学生的成绩: ); score = input.nextInt(); if(score 80) continue; num
16、+; /大于等于大于等于80分的人数分的人数double rate = (double) num / total * 100;System.out.println(80分以上的学生所占的比例为:分以上的学生所占的比例为:+ rate + %);对录入的分数进行判断,如对录入的分数进行判断,如果小于果小于80,跳出本次循环,跳出本次循环,执行下一次循环执行下一次循环问题问题4完整代码完整代码1、使用循环进行累加,循环的范围是从、使用循环进行累加,循环的范围是从1至至102 、判断当前数是否为偶数、判断当前数是否为偶数3 、如果为奇数跳过,执行下一个循环,如果为偶数,进、如果为奇数跳过,执行下一个
17、循环,如果为偶数,进行累加行累加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之间的所有偶数和之间的所有偶数和 完整代码完整代码演示运行效果演示运行效果对比对比break和和continue对比方法:通过对比方法:通过Eclipse单步运行,观察单步运行,观察程序执行顺序
18、程序执行顺序变量值的变化变量值的变化观察案例观察案例案例案例1:110之间的整数相加,得到累加值大于之间的整数相加,得到累加值大于20的当前数的当前数 案例案例2:求:求110之间的所有偶数和之间的所有偶数和小结小结4说一说在循环中使用说一说在循环中使用continue和和break的区别?的区别? int sum=0;for( int i=0;i5;i+) if( i = 3) break; sum=sum+i;System.out.println(sum = +sum);sum = 3sum = 7输出值是多少?如果将输出值是多少?如果将break替换成替换成continue,输出值又为多少?输出值又为多少?替换后替换后循环结构总结循环结构总结2-1到目前为止所学的循环结构有哪些?到目前为止所学的循环
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026全国妇联所属在京事业单位招聘74人考试题库附答案
- 2026年上海工程技术大学单招(计算机)测试模拟题库附答案
- 2026年临夏现代职业学院单招(计算机)考试参考题库附答案
- 2025年11月广东深圳市龙华区招聘社区网格员(公共基础知识)测试题附答案
- 2026湖北省定向重庆大学选调生招录(公共基础知识)综合能力测试题附答案
- 2026上海浦东职业技术学院教师招聘30人(公共基础知识)测试题附答案
- 2026江西中医药大学高层次人才招聘159人(1)考试题库附答案
- 2026年江阴职业技术学院单招(计算机)测试备考题库附答案
- 许可协议书已过期
- PCR实验室培训课件
- 木门工程售后方案(3篇)
- 2025至2030中国淡竹叶行业发展分析及产业运行态势及投资规划深度研究报告
- 电工技能实训试题及答案
- 挂名监事免责协议书模板
- 宁波职高高一数学试卷
- 2025-2026学年苏教版(2024)小学数学二年级上册(全册)教学设计(附目录P226)
- 分布式光伏电站运维管理与考核体系
- HY/T 0457-2024蓝碳生态系统碳储量调查与评估技术规程海草床
- 幼儿园食品储存安全自查报告的范文
- 公共政策概论-004-国开机考复习资料
- 2025至2030中国船用防冻剂行业发展趋势分析与未来投资战略咨询研究报告
评论
0/150
提交评论