《Java编程基础》课件第6章 程序的流程控制_第1页
《Java编程基础》课件第6章 程序的流程控制_第2页
《Java编程基础》课件第6章 程序的流程控制_第3页
《Java编程基础》课件第6章 程序的流程控制_第4页
《Java编程基础》课件第6章 程序的流程控制_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

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

文档简介

第6章 程序的流程控制6.4跳转控制6.3重复执行6.2选择性执行6.1Java的流程控制语句教学要求:理解:流程控制语句的作用,跳转控制语句break和continue的作用掌握:if-else语句及嵌套的if-else语句、switch语句、for语句、while语句和do-while语句的使用,跳转控制语句break语句和continue语句的使用6.1 Java的流程控制语句在程序设计中,为完成一定的操作或实现一定的功能,需要按照一定的顺序安排好需要执行的语句,这就是流程控制。Java语言支持3种流程控制结构:顺序结构:默认的选择结构:if-else语句和switch语句循环结构:for语句、while语句和do-while语句6.1 Java的流程控制语句(续)默认的顺序结构如图:classSequenceDemo1{

public

static

voidmain(String[]args){ Stringname="ZhangSan"; Stringgreetings="WelcometoJavaWorld!"; System.out.print(name); System.out.print(":"); System.out.println(greetings); }}6.2 选择性执行在某些应用场景中,需要根据特定条件判断的结果,选择性的执行某些语句。Java的分支结构语句就能实现这种选择性的执行if-else语句switch语句6.2 选择性执行(续)二选一:if-else语句当这个特定的条件只有正、反2面时,可以用基本的if-else语句来实现二选一结构:条件为“正”——即条件成立时,执行某些语句;条件为“反”——即条件不成立时,执行另外的语句。6.2 选择性执行(续)二选一的if-else语句语法:执行流程:布尔表达式结果为true,代表条件成立,将执行if后{}中的语句序列1;布尔表达式结果为false,代表条件不成立,将执行else后{}中的语句序列2。示例if(布尔表达式){

语句序列1}else{

语句序列2}6.2 选择性执行(续)if-else语句在使用时的一些注意事项:if后的表达式必须是布尔表达式,其值只能是true或者false。if分支或else分支,若其后的执行语句只有1条,则{}可以省略(但不推荐省略)。else分支并不是必须的。如果只需要在满足一定条件时执行一定的操作,而条件不满足时什么也不必做,则可以省略else分支。6.2 选择性执行(续)多选一:嵌套的if-else结构嵌套的if-else结构,可以实现从多种(主要是3种及以上)分支中选其一执行。规整的嵌套if-else结构(也称作if-else-if结构),如图所示:6.2 选择性执行(续)规整的嵌套if-else语句语法:示例if(布尔表达式1){

语句序列1}elseif(布尔表达式2){

语句序列2}elseif(布尔表达式2){

语句序列3}……else{

语句序列N}6.2 选择性执行(续)嵌套的if-else变形1:在if分支中再嵌套if-else结构。if(布尔表达式1){ //还可以包含其它语句if(布尔表达式2){

语句序列1 }else{

语句序列2 } //还可以包含其它语句}else{

语句序列3}6.2 选择性执行(续)嵌套的if-else变形2:在else分支中再嵌套if-else结构。if(布尔表达式1){

语句序列1}else{ //还可以包含其它语句

if(布尔表达式2){

语句序列2}else{

语句序列3}//还可以包含其它语句}6.2 选择性执行(续)嵌套的if-else结构补充说明:如果有必要的话上述结构中的else分支都是可以省略的。即使if或else分支中的可执行语句只有1条,也最好不要省略{},如果分支中嵌套了if-else语句,就更不要省略{},{}可以界定if或else分支的范围,以方便对if和else进行匹配。在嵌套的if-else结构中,else与if配对的原则是:else总是与其前面最近的一个未配对过的if配对。弄清else与哪个if配对,才能理清所描述的条件。示例6.2 选择性执行(续)另一种多选一:switch语句switch(表达式){ case值1:语句序列1 case值2:语句序列2 …… case值N:语句序列N default:语句序列N+1}6.2 选择性执行(续)switch语句使用说明switch后的表达式必须是一个能得到整型值的表达式,简单的说,switch后必须是一个整数。case后的值也必须是整数值,case与值之间必须有空格。6.2 选择性执行(续)switch语句使用说明(续)执行方式:计算switch后表达式的值,然后顺序的与每一个case后的值进行匹配,如果找到相等的值,即是找到了执行的入口,接下来就从该case子句的语句序列开始顺次地向下执行,直至遇到switch的}为止;如果表达式的值与每一个case后的值都不相等,则执行default后的语句,直至遇到switch的}为止。6.2 选择性执行(续)switch语句使用说明(续)使用default的意图是:若switch的表达式没有找到匹配的值,即没有满足条件的分支,则执行default后的语句,可以给用户一些提示信息。default子句是可以省略的。示例6.2 选择性执行(续)实例运用输入3个整数,找出其中的最大者并输出输入一个分数值,然后判定该分数对应的成绩等级,假设:分数>=90,等级为A;分数>=80而<90,则为B;分数>=70而<80,则为C;分数>=60而<70,则为D;分数<60就为E。改用switch结构来实现上述应用6.3 重复执行有些问题可以通过重复执行某些操作来解决,比如说求1+2+……+100的值。Java提供了几种实现重复执行的语句(循环语句)while语句for语句do-while语句6.3 重复执行(续)while语句:执行流程:示例while(循环条件){//需要重复执行的语句,也叫做循环体}6.3 重复执行(续)while循环使用时的注意事项:一般在进行循环条件判定之前给循环变量赋初值。为避免死循环的出现,循环体中应包含能使循环趋向结束的语句。比如修改循环变量的值,使得某个时刻循环条件不再成立而退出循环。6.3 重复执行(续)for语句:执行流程:for(表达式1;表达式2;表达式3){ //循环体}6.3 重复执行(续)说明:表达式2代表循环条件,应是一个布尔表达式,根据其值为true或为false确定是否执行循环体语句。表达式1通常用于给循环变量赋初值,这部分只会执行一次。表达式3通常用于修改循环变量的值,使得最终表达式2代表的循环条件可能成为false,从而退出循环。表达式3在每次循环体执行完毕之后都会执行一次。示例6.3 重复执行(续)表达式缺省的说明:无论缺省哪个表达式,或是表达式全部缺省,其中分隔3个表达式的分号“;”一个都不能少。表达式1可以缺省,则循环变量赋初值应放到for语句之前进行。表达式2可以缺省,但这样就相当于是循环条件永远为true,循环将无限次地运行下去。表达式3可以缺省,则循环变量值的改变需要放至循环体中进行。3个表达式全部可以缺省(不推荐)。6.3 重复执行(续)do-while语句:执行流程:示例do{ //循环体}while(循环条件);6.3 重复执行(续)循环的嵌套一个循环体内部又包含另一个完整的循环结构,就称为循环的嵌套。内嵌的循环中还可以再嵌入循环结构,这样就可以形成多层循环。3种循环语句while语句、do-while语句和for语句之间可以互相嵌套。示例6.3 重复执行(续)实例运用求1!+2!+……+20!的和值用π/4≈1-1/3+1/5-1/7+……公式求π的近似值,直到某一项的绝对值小于10-6为止。百钱买百鸡问题:现有100钱,要买100只鸡,已知母鸡5钱1只,公鸡3钱1只,小鸡1钱3只,要求找出用100钱买100只的方案。6.4 跳转控制分支语句、循环语句都有自己的执行流程,尤其是循环语句,若不遇到合适的条件循环不会终止,但有的时候在特定条件出现的时候,可能会希望能将现有的执行流程改变,而跳转到其它地方继续执行。Java提供了一些可以控制执行流程转向的跳转控制语句:break语句continue语句6.4 跳转控制(续)break语句:使用范围:用在循环语句for、while、do-while语句和分支语句switch中。break;6.4 跳转控制(续)break用于switch结构,表示终止该switch语句的执行,转去执行switch语句之后的语句。break用于循环结构,表示终止break语句所在的该层循环的执行,转至该循环语句之后的语句继续执行。示例6.4 跳转控制(续)跳转至下一轮迭代:continue语句使用范围:continue只能用在循环结构中。循环体中遇到continue语句时,将跳过其后还未执行的循环体语句,转去判断循环条件是否成立而决定是否要进入下一轮迭代(即再次进入循环体执行)。示例continue;本章小结程序的流程控制结构共3种:顺序结构、选择结构(或叫分支结构)和循环结构。Java使用if-else语句实现基本的二选一分支结构,使用嵌套的if-else和switch语句可以实现多分支结构。Java使用for语句、while语句和do-while语句来实现循环结构,其中for语句的使用最为灵活。break语句可以从switch结构中跳出,或是终止循环的执行,contin

温馨提示

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

评论

0/150

提交评论