第三章Java程序控制结构
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
格式:
if(条件表达式) { 语句组1; } else { 语句组2; }
第 5 页
共 18 页
if语句的嵌套,其语法形式如下:
天 津 工 程 职 业 技 术 学 院 计 算 机 工 程 系
第 6 页
共 18 页
if(条件表达式1) { 语句组1;} else if(条件表达式2) { 语句组2;} else if(条件表达式3) { 语句组3;} else if(条件表达式4) { 语句组4;}
第 2 页
共 18 页
天 津 工 程 职 业 技 术 学 院 计 算 机 工 程 系
第 3 页
共 18 页
结构化程序设计的三种基本流程: 1.自顶向下 2.逐步求精 3.模块化 除了以上的原则,结构化程序设计还有 一个重要的规定,那就是只能使用“顺序结 构”、“选择结构”、“循环结构”这三种 基本结构(或由它们派生出来的结构)来定 义程序的流程。 三种基本流程控制结构示意图分别如 下图所示。
天 津 工 程 职 业 技 术 学 院 计 算 机 工 程 系
for语句的执行过程: (1 )在循环刚开始时,先计算表达式 1 ,在这 个过程中,一般完成的是初始化循环变量或其它 变量。 (2)根据表达式2 的值来决定是否执行循环体。 表达式2是一个返回布尔值的表达式,若该值为假, 将不执行循环体,并退出循环;若该值为真,将 执行循环体。 (3 )执行完一次循环体后,计算表达式 3 。在 这个过程中一般会修改循环变量。 (4)转入第(2)步继续执行。 【例】 【例】 用for语句计算10的阶乘 for语句的嵌套
第 9 页
共 18 页
天 津 工 程 职 业 技 术 学 院 计 算 机 工 程 系
3.2 循环结构控制 循环结构是程序中一种重要的基本 结构,是指在一定的条件下反复执行某 段程序,被反复执行的这段程序称为 “循环体”。 Java 中有三种语句来实现循环结构, 分别是while,do-while和for语句。 它们的结构分别如下图所示。
第 13 页
共 18 页
天 津 工 程 职 业 技 术 学 院 计 算 机 工 程 系
源自文库
二、while语句 while语句的格式如下: while(条件表达式) { 循环体语句; }
第 14 页
共 18 页
在循环刚开始时,会计算一次“条件表达式”的 值。当条件为假时,将不执行循环体,直接跳转到循 环体外,执行循环体外的后续语句;当条件为真时, 便执行循环体。每执行完一次循环体,都会重新计算 一次条件表达式,当条件为真时,便继续执行循环体, 直到条件为假才结束循环。while语句的结构如图(a) 所示。 【例】 用while语句计算10的阶乘
天 津 工 程 职 业 技 术 学 院 计 算 机 工 程 系
3.3 控制转移语句 跳转语句用来实现循环执行过程中的流程转 移。在switch 语句中使用过的break语句就是一种 跳转语句。 在Java语言中,有两种跳转语句:
break语句和continue语句。
第 16 页
共 18 页
在Java语言中,可用break和continue控制循 环的流程。其中, break用于强行退出循环,不执 行循环中剩余的语句。而 continue 则停止执行当 前的循环,开始新的循环。 break语句和continue语句都有两种使用的形 式:一种是不带标号的break语句和continue语句; 一种是带标号的break语句和continue语句。
第 10 页
共 18 页
天 津 工 程 职 业 技 术 学 院 计 算 机 工 程 系
第 11 页
共 18 页
天 津 工 程 职 业 技 术 学 院 计 算 机 工 程 系
第 12 页
共 18 页
一、for语句 for语句是三个循环语句中功能最强,使用 最广泛的一个。for语句的格式如下: for(表达式1;表达式2;表达式3) { 循环体语句; } 表达式1一般是一个或多个(逗号隔开)赋 值语句,它用来给循环控制变量赋初值;表达 式2是一个布尔类型的表达式,它决定什么时候 退出循环;表达式3一般用来修改循环变量,控 制变量每循环一次后按什么方式变化。这三个 部分之间用“;”分开。 for语句的结构如图 (c)所示。
天 津 工 程 职 业 技 术 学 院 计 算 机 工 程 系
课堂小结
• Java的三种基本控制结构:顺序、循环、分支。 • 循环结构中要注意三种循环结构的特点,灵活 掌握什么情况下用什么循环结构。 • 循环跳转语句较难理解,应该多写不同程序来 理解其含义。
第 18 页
共 18 页
第 7 页
共 18 页
二、switch语句
天 津 工 程 职 业 技 术 学 院 计 算 机 工 程 系
第 8 页
共 18 页
switch 语句(又称开关语句)是和 case 语句 一起使用的,其功能是根据某个表达式的值在多 个 case 引导的多个分支语句中选择一个来执行。 它的一般格式如下: switch(表达式) { case 判断值1:语句块1;break; case 判断值2:语句块2;break; case 判断值3:语句块3;break; …… case 判断值n:语句块n;break; default:语句块n+1 }
天 津 工 程 职 业 技 术 学 院 计 算 机 工 程 系
JAVA程序设计
第 1 页
共 18 页
天津工程职业技术学院计算机工程系软件技术教研室
天 津 工 程 职 业 技 术 学 院 计 算 机 工 程 系
第三章 Java程序控制结构
教学目标: 掌握Java语言三种程序控制结构, 能灵活运用控制语句编写程序。 教学重点: Java的选择结构和循环结构。 教学难点: 跳转语句;
【例】 求三个数中的最大者
天 津 工 程 职 业 技 术 学 院 计 算 机 工 程 系
在if—else语句中,else部分是选择性的。 经常可以看到只有 if 语句,而没有 else 语句的 情况。在这种情况下,当测试条件为假时如不 需做任何事,else 部分可被省略。这时,其语 法形式如下: if(条件表达式) { 语句组; } 其流程如图所示。
天 津 工 程 职 业 技 术 学 院 计 算 机 工 程 系
switch 后面括号中表达式的值必须是符合 byte,char,short,int类型的常量表达式,而 不能用浮点类型或 long类型,也不能为一个字符 串。 一个switch语句可以代替多个if—else语句 组成的分支结构,而switch语句从思路上显得更 清晰。 【例】 根据不同的四则运算符(+、-、*、/), 对两个实数执行相应的运算并输出结果。 【例】 对上例的修改
天 津 工 程 职 业 技 术 学 院 计 算 机 工 程 系
一、不带标号的break语句和continue语句 【例】 使用break语句跳出循环体 【例】 使用continue语句终止当前循环
第 17 页
共 18 页
二、带标号的break语句和continue语句 标号应该定义在某一个循环语句之前,紧靠在 循环语句的前方,用来标志这个循环结构,在标号 和循环之间置入任何语句都是不明智的行为。 而在循环之前设置标号的唯一理由是:我们希 望在其中嵌套另一个循环或者一个开关, break 和 continue 关键字若随同标号使用,它们就会中断到 存在标号的地方。
天 津 工 程 职 业 技 术 学 院 计 算 机 工 程 系
第 4 页
注:虽然Java是面向对象的程序 共 设计语言,但是同样存在这三种 18 页 基本的程序控制结构。
天 津 工 程 职 业 技 术 学 院 计 算 机 工 程 系
3.1 选择结构程序设计
如图所示,选择结构又称为分支结构,是在两 种或两种以上的多条执行路径中选择一条执行的控 制结构。 一、if—else语句
天 津 工 程 职 业 技 术 学 院 计 算 机 工 程 系
第 15 页
共 18 页
三、do-while语句 do-while语句的格式如下: do { 循环体语句; }while(条件表达式) do-while循环与while循环的不同在于:它先执 行循环中的语句,然后再判断条件是否为真,如果 为真则继续循环;如果为假,则终止循环。因此, do-while循环至少要执行一次循环语句。 do-while语句的结构如图 (b)所示。 【例】 用do-while语句计算10的阶乘