《三章1Java语句结构.ppt》由会员分享,可在线阅读,更多相关《三章1Java语句结构.ppt(39页珍藏版)》请在三一文库上搜索。
1、第三章 Java语句结构 班级软件技术专业 10级(Java方向) 任课教师朱利华 QQ86061260 OfficeSA410 Company Logo 主要内容 学习目标及重、难点1 任务学习 2 课堂实践3 总结与要求4 任务介绍编写应用程序,求解百元百鸡问题:假定公鸡 每只3元,母鸡每只5元,小鸡3只1元,问用 100元买100只鸡,各买多少只? 任务分析 支撑知识讲解 p 分支语句 p 循环语句 p 跳转语句 任务实现 任务解决 任务小结 学习目标 重点、难点 Company Logo 重点 程序控制的意义 分支、循环和跳转的实现 难点循环条件,循环次数 switch语句的使用 w
2、hile和dowhile。 正确使用continue、break 学习目标 掌握Java语言的基本语句结 构:表达式语句、复合语句 、分支语句、循环语句、跳 转语句 掌握分支语句的应用,关键 字,几种分支的区别 掌握循环语句的应用,关键 字,几种循环的区别 掌握跳转语句的应用,关键 字,几种跳转的区别 学习内容 表达式语句 复合语句 分支语句 循环语句 跳转语句 注释语句 本章背景 v本章将学习 如何应用分支语句,循环语句,跳转语句等设计具有 完整功能的Java应用程序。 v要求学生 掌握Java中常见的if语句结构,switch语句结构, while语句结构,do-while语句结构,for
3、循环结构, break语句,continue语句,return语句等 了解程序控制的意义和作用,能根据不同控制逻辑对 程序进行分析、理解,并综合应用上述语句实现一定 的逻辑功能,锻炼程序调试能力 任务学习 任务介绍任务分析任务实现 Company Logo v任务描述 编写Java应用程序,求解百元百鸡问题:假定 公鸡每只3元,母鸡每只5元,小鸡3只1元,问 用100元买100只鸡,各买多少只? 任务学习 任务介绍任务分析任务实现 Company Logo v 支撑知识介绍 表达式语句 复合语句 分支语句 循环语句 跳转语句 注释语句 Java语句 vJava语句 语句是Java程序基本的构成
4、 类是Java基本单位 每条语句 以“;”作为结束标志 Java的语句 有表达式语句,复合语句,分支(选择)语句, 循环语句,跳转语句等 Company Logo 表达式语句 v表达式语句 语法结构 Company Logo 表达式; 如: int a=3; a+=3+8; x=y=z=0; System.out.println(“Hello”); 前三个是赋值语句,最后一个是方法调用语句 复合语句 v复合语句 包含在一对大括号中的任何语句序列 右边的“”后面不要分号 一个复合语句被看做一条简单语句 复合语句可以嵌套 在复合语句内定义数据仅在定义它的复合语句内起作用 Company Logo
5、Company Logo 分支语句 v分支语句 又叫选择语句,程序执行时根据条件仅选择其中的一 个分支或部分执行,而跳过其他的语句 两种 Company Logo if语句 switch语句 if(布尔表达式) 语句组1; else 语句组2; switch(整型、字符型变量或表达式) case 常量1: 语句1 ; break; case 常量2: 语句2 ; break; case 常量3: 语句3 ; break; default: 语句n ; 注意:与c语言不同条件表达式必须是布尔型的,不能是数值型的,因为Java中的 布尔型是独立的数据类型,而不象c/c+中为枚举类型(0、1),所以
6、不能转换 为数值型。 分支语句 vif语句 Company Logo if(条件表达式) 语句组1; else 语句组2; if(条件表达式) 语句组; 分支语句 vif语句嵌套 Company Logo 出现在if为假的分支中出现在if为真的分支中 条件语句 if-else v 布尔表达式 Java中 ,是任意一个返回布尔数据类型的表达式,而且必须是布尔值 C或C +,不严格。 v 当花括号中只有一条语句时花括号可以省略。但尽量不要省略括号, 因为有时可能会造成逻辑上的混乱和理解上的困难 if(1) System.out.println(“boolean_expression”); if(
7、1 k) if (jk) System.out.println(“i and j are greater than k”); else System.out.println(“i is less than or equal to k”); 思考:把程序中的去掉,结果正确吗? 例如:i=3, j=1, k=2,最后输出else分支内语句,这是错 误的结果。 注意:除非使用大括号,否则else语句将和最近的if语句相 匹配。 课堂练习 v找出两个数中的较大者,并输出。 Company Logo 思考题:读入年贷款利率、年数和贷款额,计算偿还金额。本例 假设年利率随年数变化。设有三种不同利率:7年期
8、为7.25%, 15年期为8.5%,30年期为9%。 Switch语句 vSwitch语句 用来处理多重条件 switch语句形式 Company Logo switch (表达式) case 常量1: 语句1 ; break; case 常量2: 语句2 : break; default: 语句n; Switch语句执行时,首先计算表达式的值 ,然后将其与各case后的常量比较,如果 它与某个常量相等,则执行对应的语句(块 );如果没有任何常量的值与其相等,则执 行default后对应的语句(块);如果无 default子句,就什么也不执行。 注意:break为可选项,用于强 制跳出swit
9、ch语句,default子 句也为可选项,可以省略 Switch语句 vSwitch语句 表达式值必须为:int ,byte,char,short case 必须是常量,不能有相同的值。 对应的语句无须放在大括号中,系统自动将其视为一个整 体。建议使用 break语句 强制程序跳出switch语句,即不再进行后边的匹配工作。 如果没有该语句,则该case分支完成后将不再进行任何匹 配操作,继续执行其余的case分支。 Company Logo Switch语句 v读程序,说出结果 Company Logo int j=4; switch (j) case 1: System.out.print
10、ln(“number 1”); break; case 2: case 3: System.out.println(“number 3”); case 4: System.out.println(“number 4”); case 5: System.out.println(“number 5”); break; default: System.out.println(“Hello”); 思考题:从键盘上输入 一个字符,判断它是数 字、空格还是其他键; 若是数字,要求显示出 是哪个数字。 条件表达式 v条件表达式 语法结构 变量=布尔表达式 ?表达式1:表达式2 等价于 if (布尔表达式)
11、变量 =表达式1; else 变量 = 表达式2; Company Logo y = (x 0) ? 1 : -1; if (x 0) y = 1 else y = -1; = 循环语句 v循环语句 用于解决需要重复运算的问题 必要因素 循环初始条件 循环条件 循环体 让循环趋向结束的语句 三种循环语句结构 while do-while for Company Logo 循环语句 v循环语句 While语句格式 Company Logo while(循环条件) 循环体; 先判断,后循环 循环语句 v课堂练习 使用while循环,求1-100之间自然数的和 Company Logo 注意:如果循
12、环体为复合语句,一定要加上 大括号,否则意义将发生重大变化。 循环语句 v循环语句 do while语句格式 Company Logo do 循环体; while(循环条件) 先循环,后判断 while和do循环:差别在于循环条件和循环 体的计算顺序不同。 do循环循环体至少出现 一次。 若循环中有的语句至少需要执行一次,建议 使用do循环。 循环语句 v课堂练习 使用do-while循环,求1-100之间自然数的和 Company Logo 注意:如果循环体为复合语句,一定要加上 大括号,否则意义将发生重大变化。 循环语句 v循环语句 for循环 最为灵活、适应范围最广 可以用于循环次数已确
13、定的情况 也可以用于循环次数不确定但能给出循环结束条件的循环。 for循环语句格式 Company Logo for(表达式1;表达式2;表达式3) 循环体; 表达式1为循环变量赋初值,表达式2用 于控制何时退出循环,表达式3为循环变 量的修改部分 循环语句 v课堂练习 使用for循环,求1-100之间自然数的和 Company Logo 注意: for循环中,循环体可能一次也不执行; for循环的循环变量可以由小变大,也可由大 变小,如:for(int j=10;j0;j-)。 循环语句 v循环的嵌套 循环体内包含循环语句 多重循环在执行时,由里向外展开,先执行内层循环 ,再执行外层循环。
14、Company Logo 跳转语句 vbreak、continue、return 可以用在循环语句中为循环提供附加控制。 break:立刻终止包含它的最内层循 continue:只结束当前迭代,将程序控制转移到循环的 下一次迭代 return:返回到程序调用处,结束方法调用 Company Logo 区别: break: 用于循环或开关语句,跳出当前循环或开关语句; continue: 用于循环语句,结束本次循环; 在while和do-while中直接跳转到条件表达式,而在for循环中直接跳转 到表达式3 跳转语句 vbreak语句 Company Logo 例:求100以内整数中为13的倍数
15、的最大数 class Max public static void main(String args) int j; for(j=100;j=0;j-) if(j%13=0) break; System.out.println(“the max number=”+j); 每执行一次break,只能跳 出一重循环,如果要跳出两 重或多重循环,需要多个 break语句 跳转语句 vcontinue语句 只能无条件结束一次循环,跳过该次循环中continue 语句后的其他语句,开始下一轮循环。 Company Logo 例:将1100之间的所有不能被7整除的数 打印出来。 class Continu
16、e_example public static void main() int num; for(num=1;num= 2; i-) boolean b = false; for (int j = 2; j = i / 2; j+) if (i % j = 0) b = true; if (b = false) System.out.println(i); 程序错在什么 地方? 任务学习 任务介绍任务分析任务实现 Company Logo v 完成任务步骤分析 典型的约束满足问题,即需要从一定的解空间中寻找到满足约束条件的解。对 本题来说,如果假定公鸡i只,母鸡j只,小鸡k只,则其可能的解空间
17、为i ,j ,k ,约束条件为i+j+k=100并且金额累计100。 我们可以通过遍历解空间(需要利用循环),并判断每个可能的解是否满足 要求(需要考虑判断)来实现。因此通过上述分析,我们可以基本确定程序 将以循环结构和分支结构为主。 定义三个嵌套的循环结构(可以是while或for)以控制对变量i,j ,k的变化,注意取值范围; 对循环结构中每个变量i,j,k的取值,判断其是否满足约束条 输出程序结果。 任务学习 任务介绍任务分析任务实现 Company Logo v 任务解决 编写程序 递交 任务学习 任务介绍任务分析任务实现 Company Logo v 总结 介绍Java程序设计中几种主要的语句类型 分支语句、循环语句和跳转语句 基本使用方法和相互区别 使用上述结构实现简单的Java程序,解决一些简单问 题 课堂实训 v课堂实践3 -见文档 Java语句结构 解决简单问题 Company Logo 要求 v基本语句结构 条件语句 循环语句 跳转语句 作业3-见文档
链接地址:https://www.31doc.com/p-2625800.html