流程控制语句(理论).ppt_第1页
流程控制语句(理论).ppt_第2页
流程控制语句(理论).ppt_第3页
流程控制语句(理论).ppt_第4页
流程控制语句(理论).ppt_第5页
已阅读5页,还剩86页未读 继续免费阅读

下载本文档

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

文档简介

第三章流程控制语句 回顾 了解Java的特殊字符熟练掌握Java的8种数据类型熟练使用Java变量理解类型转换熟练掌握运算符的优先级 回顾 找出错误并更正输出结果是什么 intradius 10 doublehigh 1 9 intvol 3 14 radius radius high 需进行强制类型转换 intnum1 19 intnum2 89 inttemp temp num1 num1 num2 num2 temp System out println num1 System out println num2 intvol int 3 14 radius radius high 8919 借助一个中间变量互换两个变量的值 本章任务 描述商品真假比较成绩高低根据成绩高低做出奖惩判断成绩是优秀 良好 及格还是差 掌握boolean类型的用法掌握关系运算符和逻辑运算符掌握if条件结构使用基本if条件结构使用多重if条件结构掌握switch结构的用法掌握键盘输入 本章目标 1 程序的基本结构 程序的3种结构顺序结构 自上而下的逐行执行代码选择结构 根据逻辑判断代码的执行顺序循环结构 根据逻辑重复执行某个代码块 1 1顺序结构 顺序结构 自上而下地逐行执行代码 输入数据 处理数据 输出结果 自上而下顺序执行 1 2选择结构 选择结构 根据逻辑判断代码的执行顺序 条件不成立 条件成立 语句块 条件 语句块 1 3循环结构 循环结构 根据逻辑重复执行某个代码块 循环体 循环条件 条件成立 条件不成立 用什么数据类型能表示一件商品是真货还是假货一个条件成立还是不成立 boolean 布尔 类型boolean类型的值 真 true假 false boolean类型只有这两个值 为什么需要boolean类型 1 用boolean类型描述 学员张三的考试成绩是否比学员李四 80分 高 如何使用boolean类型 intliSi 80 学员李四成绩booleanisBig 声明一个boolean类型的变量Scannerinput newScanner System in System out print 输入学员张三成绩 提示要输入学员张三的成绩intzhangSan input nextInt 输入张三的成绩isBig zhangSan liSi 将比较结果保存在boolean变量中System out println 张三成绩比李四高吗 isBig 输出比较结果 存储比较结果 条件表达式 从控制台接收一个整数 完整代码演示 演示示例1 用boolean变量描述信息 比较高低 大小 长短张三的考试成绩是否比李四高大象是否比乌龟更长寿篮球跟地球一样大吗 如何比较 使用关系运算符可以比较高低 大小 长短 为什么使用关系运算符 什么是关系运算符 常用的关系运算符有哪些 大象的寿命李四的成绩假令狐冲每次考试成绩 90分真篮球的大小 地球的大小假 由此看出 关系运算符的作用 用来做比较运算比较后结果 boolean类型 2 如果令狐冲的Java考试成绩大于90分 师父就奖励他一本武功秘笈 为什么需要if条件结构 使用if条件结构可以解决 什么是if条件结构 if条件结构是根据条件判断之后再做处理 if 条件 语句 if 令狐冲Java成绩 90 师父奖励令狐冲 结合问题2 基本的if条件结构 如何使用if条件结构 回顾 如果令狐冲的Java考试成绩大于90分 师父就奖励他 独孤九剑 剑谱 使用if条件结构该如何实现 importjava util Scanner publicclassHuashanpai publicstaticvoidmain String args Scannerinput newScanner System in System out print 输入令狐冲的Java成绩 intscore input nextInt 令狐冲的Java成绩if score 90 判断是否大于90分System out println 师父说 不错 给你 独孤九剑 剑谱 演示示例2 使用基本if条件结构 如何使用if条件结构 3 令狐冲Java成绩大于90分 而且音乐成绩大于80分 师父奖励他 或者Java成绩等于100分 音乐成绩大于70分 师父也可以奖励他 分析 怎样把多个条件连接起来 使用逻辑运算符 问题3的条件如何编写 如何使用if条件结构 多使用小括号 控制优先级 score1 90 score2 80 score1 100 score2 70 运算符的优先级 最高的优先级 小括号 即 最低的优先级 赋值运算符 即 优先级顺序 算术运算符 比较运算符 publicclassHuashanpai publicstaticvoidmain String args intscore1 100 令狐冲的语文成绩intscore2 72 令狐冲的历史成绩if score1 90 如何使用if条件结构6 4 4 如果令狐冲考试成绩大于90分 师父就奖励他 独孤九剑 否则师父就罚他上思过崖闭关思过 使用两个基本if条件结构 使用if else条件结构实现 if score 90 System out println 师父说 不错 给你 独孤九剑 剑谱 if score 90 System out println 师父说 不孝徒 上思过崖闭关思过去吧 如何使用if条件结构6 5 if else条件结构 if 条件 语句1 else 语句2 if 令狐冲考试成绩 90 师父奖励令狐冲 else 师父罚他闭关思过 结合问题4 使用if else条件结构解决问题4 publicclassHuashanpai publicstaticvoidmain String args intscore 89 令狐冲的语文成绩if score 90 System out println 师父说 不错 给你 独孤九剑 剑谱 else System out println 师父说 不孝徒 上思过崖闭关思过去吧 演示示例4 使用if else结构 如何使用if条件结构6 6 小结1 说出已学过的基本数据类型有哪些 int double char boolean byte short long float举例说明已学过的运算符有哪些 赋值运算符 算术运算符 条件运算符 逻辑运算符if和if else条件结构执行的顺序是什么 if 如果条件表达式成立 执行语句if else 如果条件表达式成立 执行语句1 如果不成立 执行语句2 1 小布什买了一筐鸡蛋 如果坏蛋少于5个 他就吃掉 否则他就去退货2 要求用户输入两个数a b 如果a能被b整除或a加b大于1000 则输出a 否则输出b 小结1 为什么使用多重if结构 5 对学员的结业考试成绩评测成绩 90 优秀成绩 80 良好成绩 60 中等成绩 60 差 使用多重if结构 多重if结构就是在else部分中还包含其他if块 什么是多重if结构 if 条件 语句 elseif 条件 语句 else 语句 可以有多个 可以省略 多重if结构 如何使用多重if结构 使用多重if结构解决问题5 intscore 70 考试成绩if score 90 System out println 优秀 elseif score 80 System out println 良好 elseif score 60 System out println 中等 else System out println 差 大于等于90分 大于等于60分 小于80分 小于60分 大于等于80分 小于90分 演示示例5 使用多重if结构 为什么使用switch结构 6 令狐冲参加比武大会如果获得第一名 将出任武林盟主如果获得第二名 将出任武当掌门如果获得第三名 将出任峨嵋掌门否则 将被逐出师门 使用if条件结构如何实现实现代码 更好的解决办法 使用switch结构解决 switch 表达式 case常量1 语句 break case常量2 语句 break default 语句 switch结构 什么是switch结构 计算表达式的值 如果等于常量1 如果等于常量2 如果没有找到匹配的值 使用switch结构解决问题6 如何使用switch结构 intmingCi 1 switch mingCi case1 System out println 出任武林盟主 break case2 System out println 出任武当掌门 break case3 System out println 出任峨嵋掌门 break default System out println 被逐出师门 第一名的情况下 第二名的情况下 第三名的情况下 其他情况下 完整代码演示 演示示例6 使用switch结构 常见错误3 1 intmingCi 1 switch mingCi case1 System out println 出任武林盟主 case2 System out println 出任武当掌门 case3 System out println 出任峨嵋掌门 default System out println 被逐出师门 输出结果是什么 如果需要每个case执行完后跳出 在每个case后不要忘记写break 演示示例7 完整代码 常见错误3 2 intmingCi 1 switch mingCi case1 System out println 出任武林盟主 case2 System out println 出任武当掌门 case2 System out println 出任峨嵋掌门 default System out println 被逐出师门 case后面的常量必须各不相同 代码错误 常见错误3 3 Stringday 星期一 switch day case 星期一 System out println 星期一 青菜 break case 星期二 System out println 星期二 鱼 break default switch后面小括号中表达式的值必须是整型或字符型 演示示例8 完整代码 代码错误 比较switch和多重if结构 相同点不同点switch多重if 都可以实现多分支结构 只能处理等值的条件判断 且条件是整型变量或字符变量的等值判断 处理在else部分还包含其它if结构 特别适合某个变量处于某个区间时的情况 小结2 输入赵本山的考试成绩 显示所获奖励成绩 100分 爸爸给他买辆车成绩 90分 妈妈给他买MP490分 成绩 60分 妈妈给他买本参考书成绩 60分 什么都不买 参考代码 张三为他的手机设定了自动拨号按1 拨爸爸的号按2 拨妈妈的号按3 拨爷爷的号按4 拨奶奶的号编程实现此业务 参考代码 总结 什么数据类型可以描述真和假 描述几种分支结构的语法和执行过程 什么情况下会使用多重if条件结构 多重if条件结构和switch结构的区别和适用场合是什么 理解循环的含义会使用while循环结构会使用do while循环结构会使用调试解决简单的程序错误 本章目标 1 盈盈为了考验令狐冲夺冠的决心 要他说一百遍 我能行 System out println 第1次说 我能行 System out println 第2次说 我能行 System out println 第100次说 我能行 100条 2 盈盈要他说10000遍 我是最棒的 怎么办 为什么需要循环2 1 为什么需要循环2 2 System out println 我是最棒的 System out println 我是最棒的 System out println 我是最棒的 System out println 我是最棒的 System out println 我是最棒的 System out println 我是最棒的 System out println 我是最棒的 inti 1 while i 100 System out println 我能行 i i 10000 我是最棒的 没有使用循环结构 使用while循环 完整代码1 完整代码2 演示示例2 使用循环结构解决问题1 什么是循环 生活中的循环 打印50份试卷 10000米赛跑 旋转的车轮 循环结构的特点 锲而不舍地学习 什么是while循环 特点 先判断 再执行 while 循环条件 循环操作 符合条件 循环继续执行 否则 循环退出 循环中被重复执行的操作 inti 1 while i 30 System out println 我能行 i 编码规范 缩进 换行 3 如何用程序描述下面这个故事呢 为了备战 令狐冲锲而不舍地练习 盈盈严格把关 盈盈 怎么样 可以了吗 不行 高音部分唱得还不是很好 钢琴还要继续练啊 没有听到 很棒 的评价 看来革命尚未成功 令狐冲并不气馁 早上5点练声 上午练钢琴 下午到声乐老师家练习唱歌 晚上练习舞蹈基本功 循环条件 循环操作 使用while循环的步骤1 分析循环条件和循环操作2 套用while语法写出代码3 检查循环是否能够退出 怎样使用while循环3 1 怎样使用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 圆满完成 循环条件 循环操作 比较两个String类型的值是否相等 演示示例3 使用while循环结构 怎样使用while循环3 3 4 录入班级人数和学员成绩 计算班级学员的平均成绩 循环条件 目前录入的成绩数目小于总人数循环操作 录入学生成绩 并累加求和 演示示例4 使用while循环结构 while i stuNum System out print 请输入学号 i 的成绩 score input nextInt sum sum score i avg sum stuNum while循环常见问题3 1 打印4次 欢迎大唐高僧 publicstaticvoidmain String args inti 0 while i 4 System out println 欢迎大唐高僧 i 永远都不会退出的循环称为死循环 循环一直执行 不会退出 哪里出错了 while循环常见问题3 2 打印4次 欢迎大唐高僧 publicstaticvoidmain String args inti 1 while i 4 System out println 欢迎大唐高僧 i i 4 只打印了三次 哪里出错了 注意检查循环次数是否满足需求 while循环常见问题3 3 打印4次 欢迎大唐高僧 publicstaticvoidmain String args inti 0 while i 5 System out println 欢迎大唐高僧 i 注意 如果一开始条件就不满足 while循环一次都不执行 i 5 一次都没有打印 哪里出错了 2010年培养学员8万人 每年增长25 请问按此增长速度 到哪一年培训学员人数将达到20万人 提示 1 循环条件和循环操作分别是什么 2 intyear 2010 doublestudents 80000 while 3 2011年培训学员数量 80000 1 0 25 参考代码 小结1 do while循环 5 如何用程序讲述下面的故事 苦练半年 眼看大赛在即 盈盈提议 彩排一次 如果很令人满意 以后就不用彩排了 否则每天都要彩排 直到现场表现让她满意为止 他能否用动听的歌声震撼盈盈 用美妙的钢琴声博得赞赏呢 do 循环操作 while 循环条件 while 循环条件 循环操作 while循环先判断 再执行不适合描述此故事 什么是do while循环 do 循环操作 while 循环条件 先执行一遍循环操作 符合条件 循环继续执行 否则 循环退出 特点 先执行 再判断 怎样使用do while循环2 1 do System out println 唱歌 System out println 演奏肖邦钢琴曲 System out print 可以了吗 y n answer input next while answer equals y System out println 大功告成 循环条件 先执行一遍循环操作 演示示例5 使用do while循环结构 怎样使用do while循环2 2 6 连续录入学生姓名 输入 q 则系统退出 Stringname Scannerinput newScanner System in do System out print 请输入学生姓名 name input next while name equals q System out println 程序结束 演示示例6 使用do while循环结构 while循环和do while循环的区别语法不同初始情况不满足循环条件时while循环一次都不会执行do while循环不管任何情况都至少执行一次 do 循环操作 while 循环条件 while 循环条件 循环操作 先判断 再执行 先执行 再判断 比较while和do while 小结2 使用do while实现 输出摄氏温度与华氏温度的对照表 要求它从摄氏温度0度到250度 每隔20度为一项 对照表中的条目不超过10条 转换关系 华氏温度 摄氏温度 9 5 0 32 参考代码 提示 1 循环操作 计算摄氏温度 并输出对照条目2 循环条件 条目 10 摄氏温度 250 publicclassTempTable publicstaticvoidmain String args doublef 华氏doublec 0 摄氏intcount 1 条目System out println 摄氏温度 t华氏温度 do f c 9 5 0 32 转换System out println c t f c c 20 count while count 10 程序调试9 1 令狐冲锲而不舍地练 但还是不令人满意 怎么回事呢 他仔细地分析 哪一步出错了呢 歌唱得不好 钢琴演奏不过关 这次 他每进行一步都问盈盈的评价 盈盈觉得令狐冲唱歌感情投入不够 问题找到啦 唱歌时练习先打动自己 再打动别人 嘿嘿 问题解决 大功告成 程序出错 分步运行 查找原因 找到问题 修正错误 解决问题 程序调试9 2 当程序出错时 我们也希望能这样 程序执行时忽闪一下就运行结束 怎么让程序一步一步运行 程序调试 断点 程序暂停执行的代码行 程序调试9 3 7 使用do while打印5次 你好天蓬元帅 inti 1 do System out println 你好天蓬元帅 i i 1 while i 5 完整代码 只打印了4次 怎么查找错误呢 程序调试9 4 程序调试的步骤1 猜测出错位置 设置断点2 单步运行3 观察变量4 发现问题5 修正代码 重新运行6 解决问题 程序调试9 5 步骤1 猜测出错位置 设置断点然后 点击工作台上按钮 启动调试 演示示例7 设置断点 设置调试配置 启动调试 启动调试 双击对应代码行的左侧边栏即可设置断点 程序调试9 9 调试 程序员70 时间在做的事情调试史话调试的主要方法 bug缺陷 找出并解决bug的过程 debug调试 小结3 1 程序调试的目的 2 程序调试的主要方法 3 调试的主要步骤 找出缺陷原因 修正缺陷 设置断点 单步执行 观察变量 1 猜测出错位置 设置断点2 单步运行3 观察变量的值4 发现问题5 修正代码 重新运行6 解决问题 总结 循环结构的特点是什么 while循环和do while循环有什么区别 如何设置断点和启动调试 作业 编写一个程序 实现两个数字交换 编写Java程序 根据用户输入的考试分数判断等级用户输入两个数 再输入一个符号 根据操作符来判断运算方式 例如 就进行加法运算 编写程序 分别使用while do while for循环求100 200的累加和使用for循环 判断用户输入的数字是否为正整数 如果是则计算其阶乘求1 1000之间可以同时被3 5 7整除的数字 回顾 while循环和do while循环结构之间的异同 代码填空 实现整数反转程序调试有哪几个步骤 publicclasshuiwen publicstaticvoidmain String args intval 12345 intr digit System out print 反转后的整数是 while while val 0 r digit val 10 System out print r digit val val 10 完整案例 学会使用for循环结构学会在程序中使用break和continue熟练使用Eclipse调试工具进行程序调试 本章目标 为什么使用for循环2 1 回顾问题1 令狐冲说一百遍 我最棒 回顾问题2 根据人数和成绩 计算平均成绩 解决 使用while循环 共同点 确定的循环次数 更优解决 for循环结构 为什么使用for循环2 2 inti 0 while i 100 System out println 我最棒 i for inti 0 i 100 i System out println 我最棒 for比while更简洁 while循环结构 for循环结构 for循环的语法和执行顺序 什么是for循环 for 条件为true 循环体被执行 for inti 0 i 100 i System out println 我最棒 代码规范 格式对齐 代码的缩进 表达式1 表达式2 表达式3 循环操作 参数初始化 条件判断 更新循环变量 1 2 4 3 如何使用for循环3 1 1 循环录入某学员S1的5门课成绩 计算平均分 循环次数 5循环条件 循环的次数不足5 继续循环循环操作 录入成绩 计算成绩之和 使用for循环结构的步骤1 分析循环条件和循环操作2 套用for语法写出代码3 检查循环是否能够退出 结合问题1 如何使用for循环3 2 省略声明变量for inti 0 i 5 i 循环5次录入5门课成绩System out print 请输入5门功课中第 i 1 门课的成绩 score input nextInt sum sum score avg sum 5 计算平均分System out println name 的平均分是 avg 初始值 i 0循环条件 i 5循环变量改变 i 循环操作执行5次 演示示例1 使用for循环结构 完整代码 如何使用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循环结构 for循环常见问题4 1 for i 10 i System out println 这是 i inti 0 编译错误 变量i没有初始化 for 不能省略 可省略 表达式1省略 循环变量的初始值在for语句之前由赋值语句取得 for循环常见问题4 2 for inti 0 i System out println 这是 i 编译正确 但是缺少循环条件 造成死循环 for循环常见问题4 3 for inti 0 i 10 System out println 这是 i i 省略表达式3 在循环体内应设法改变循环变量的值以结束循环 编译通过 但是循环变量的值无变化 造成死循环 for循环常见问题4 4 for System out println 这是测试 表达式全省略 无条件判断 循环变量无改变 应在循环体内设法结束循环 否则会造成死循环 死循环 小结1 求1 100之间不能被3整除的数之和 使用for循环结构 参考代码 为什么需要break语句 inti 2 switch i case1 System out println 星期一 break case2 System out println 星期二 break 其他语句 遇到break 立即跳出switch语句 回顾break用于switch语句 描述4000米长跑比赛 for inti 0 i 10 i 跑400米 if 不能坚持 break 退出比赛 第8圈 快累死了 我要退出 什么是break语句 break 改变程序控制流用于do while while for中时 可跳出循环而执行循环后面的语句 while break 跳出整个循环 break通常在循环中与条件语句一起使用 如何使用break语句2 1 3 循环录入某学生5门课的成绩并计算平均分 如果某分数录入为负 停止录入并提示录入错误 循环录入成绩 判断录入正确性 录入错误 使用break语句立刻跳出循环 否则 累加求和 演示示例3 使用break语句 如何使用break语句2 2 for inti 0 i 5 i 循环5次录入5门课成绩System out print 请输入5门功课中第 i 1 门课的成绩 score input nextInt 从控制台接收数据if score 0 wrong false 出错标识break 退出循环 sum sum score 循环外的语句 对录入的分数进行判断 如果小于0 标记出错状态 并立即跳出整个for循环 问题3完整代码演示 1 10之间的整数相加 得到累加值大于20的当前数 1 使用循环进行累加 从1到102 判断累加值是否大于203 如果大于20 则跳出循环 并打印当前值 定义一个变量 进行累加intsum 0 for inti 1 i20 System out print 当前数是 i break 参考代码 小结2 演示运行效果 为什么需要continue语句 4 循环录入Java课的学生成绩 统计分数大于等于80分的学生比例 1 通过循环 获得分数大于等于80分的学生人数num2 判断 如果成绩 80 不执行num 直接进入下一次循环 什么是continue语句 continue 只能用在循环里continue作用 跳过循环体中剩余的语句而执行下一次循环 while c

温馨提示

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

评论

0/150

提交评论