版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Java语言程序设计第3章流程控制语句本章位置掌握分支结构1掌握循环结构2能力点掌握跳转语句3第3章流程控制语句Java语言程序设计主要内容1分支结构2循环结构3跳转语句4程序断点调试5案例分析6任务训练Java语言程序设计第3章流程控制语句3.1分支结构编写计算机程序之前,必须透彻理解所要解决的问题,研究解决问题的方法,确定解决问题的步骤(算法)。分支结构也称为选择结构,是指根据程序运行时候产生的结果或者用户的输入条件执行相应的代码。在Java中有两种选择语句可以使用:if和switch。Java语言程序设计第3章流程控制语句1.if语句的选择形式在if语句中的条件表达式的值必须是boolean型。if条件为真,执行if语句块1,否则执行语句块2的内容,if分支或者else分支语句块中的语句可以是一条语句也可以是用大括号{}括起来的一组语句(称为复合语句)。3.1.1if语句3.1分支结构第3章流程控制语句Java语言程序设计无else的判断形式if-else均有的选择形式3.1.1if语句3.1分支结构第3章流程控制语句Java语言程序设计【例3-1】if条件语句的选择形式示例。
示例功能:判断给定成绩是否合格。3.1分支结构第3章流程控制语句Java语言程序设计3.1.1if语句3.1分支结构第3章流程控制语句Java语言程序设计
程序运行结果为:pass2.if语句的多分支形式当条件有多个运行结果的时候上面的两种形式就不能满足要求了,可以使用if-else的多分支结构来进行多个条件选择。3.1.1if语句3.1分支结构第3章流程控制语句Java语言程序设计if(条件表达式1)语句1;elseif(条件表达式2)语句2;……elseif(条件表达式n-1)语句n-1;else语句n;if的多分支形式3.1.1if语句3.1分支结构第3章流程控制语句Java语言程序设计与if语句结构一样,各语句可以是一条语句,或者是用大括号括起来的语句块。【例3-2】if条件语句多分支形式示例。
示例功能:判断星期几。3.1分支结构第3章流程控制语句Java语言程序设计packagechapter03;publicclassIfmany{//判断星期几。publicstaticvoidmain(Stringargs[]){inttoday=5;if(today==1)System.out.println("TodayisMonday");
elseif(today==2)System.out.println("“TodayisTuesday");elseif(today==3)System.out.println("TodayisWednesday");elseif(today==4)System.out.println(“TodayisThursday”);elseif(today==5)System.out.println(“TodayisFriday”);elseif(today==6)System.out.println(“TodayisSaturday”);elseSystem.out.println(“TodayisSunday”);}}3.1.1if语句3.1分支结构第3章流程控制语句Java语言程序设计
程序运行结果为:TodayisFridayintx=0,y=0;if(x==1){if(y==1)//if分支嵌套if-else结构System.out.println(“x=1,y=1”);elseSystem.out.println("x=1,y!=1");} else//else分支嵌套if-else结构{if(y==1)System.out.println(“x!=1,y=1”);elseSystem.out.println("x!=1,y!=1");}3.1.1if语句3.1分支结构第3章流程控制语句Java语言程序设计条件语句可以嵌套使用,在使用if语句多分支形式时,最好用大括号确定相互的层次关系,有一个原则是else语句总是和其最近的if语句相搭配。一般情况下,if语句的嵌套最好不要超过三层。并且要注意代码的缩进,提高程序的可读性。如果采用if-else多分支形式来进行多路分支语句处理,就不免有些太过于复杂繁琐,Java中还提供了一种比较简单的形式,就是使用switch语句来进行处理,switch语句也称多分支的开关语句。3.1.2switch语句3.1分支结构第3章流程控制语句Java语言程序设计一般格式定义:3.1.2switch语句3.1分支结构第3章流程控制语句Java语言程序设计一般格式定义:(1)switch表达式的值必须是byte.short.int或者是char类型。(2)各个case后边的常量值必须是跟表达式类型一致类型或者是可以兼容的类型,不能出现重复值。(3)一般情况下,各个语句块的最后后一个语句使用break语句,以便从switch结构中退出。如果某个语句块中不使用break语句,则继续执行下一个语句块,直到遇到break语句或者遇到结构结束符“}”。(4)不同的case常量之后的语句块相同时,可以合并多个case子句,即case子句中不同常量可以对应同一组操作。(5)switch语句的执行机制是用表达式的值与各个case子句常量做等于比较,故case子句的顺序可以任意。【例3-3】switch语句示例。
示例功能:判断星期几。3.1分支结构第3章流程控制语句Java语言程序设计packagechapter03;publicclassMySwitch{//判断星期几publicstaticvoidmain(Stringargs[]){inttoday=5;switch(today){case1:System.out.println(“TodayisMonday”); break;case2:System.out.println(“TodayisTuesday”); break;case3:System.out.println(“TodayisWednesday”);break;case4:System.out.println(“TodayisThursday”);
break;case5:System.out.println(“TodayisFriday”);
break;case6:System.out.println(“TodayisSaturday”);break;case7:System.out.println(“TodayisSunday”); break;default:System.out.println(“pleaseinput1-7”);}}}3.1.2switch语句3.1分支结构第3章流程控制语句Java语言程序设计
程序运行结果为:TodayisFriday【例3-4】switch语句应用示例。示例功能:判断某年某月是多少天。3.1分支结构第3章流程控制语句Java语言程序设计packagechapter03;publicclassIsLeapYear{//判断某年某月是多少天publicstaticvoidmain(Stringargs[]){intmonth=2,year=2014,day=0;switch(month){case1:case3:case5:case7:case8:case10:case12:day=31;break;//1.3.5.7.8.10.12均是31天case4:case6:case9:case11:day=30;break;//4.6.9.11均是case2://闰年2月是29天,平年2月是28天if((year%4==0&&year%100!=0)||(year%400==0))//判断是否闰年day=29;elseday=28; }System.out.println(“现在是:”+year+“年”+month+“月:”+day+“天”);}}3.1.2switch语句3.1分支结构第3章流程控制语句Java语言程序设计
程序运行结果为:现在是:2015年2月:28天3.2循环结构
循环是指在一定条件下反复进行一项操作。比如日常生活的打印50份试卷、1500米的运动会赛跑、旋转的车轮等。循环语句会反复执行一段代码,直到循环的条件不满足时为止。循环语句总共有三种常见的形式:while语句、do-while语句和for语句。Java语言程序设计第3章流程控制语句3.2循环结构一个循环结构一般应包含四部分内容:初始化部分:用来设置循环结构的一些初始条件,如设置计数器等。循环体部分:反复执行的一段代码,可以是单一语句,也可是复合语句。迭代部分:用来修改循环控制条件。一般在本次循环结束,下次循环开始前执行。判断部分:一般是一个关系表达式或逻辑表达式,其值用来判断是否满足循环终止条件。每执行一次循环都要对该表达式求值。Java语言程序设计第3章流程控制语句循环条件表达式结果必须是布尔类型。执行该循环结构时,先检查循环条件表达式结果是否为真,为真进入循环,执行循环体并对循环变量修改后再次对循环条件表达式进行判断,为真继续执行,如此重复,一旦循环条件表达式结果为假则退出循环。3.2.1while语句3.2循环结构第3章流程控制语句Java语言程序设计【例3-5】用while语句计算1+2+3+4++......+100的结果。
3.2分支结构第3章流程控制语句Java语言程序设计
程序运行结果为:1+2+3+…+100的和为50503.2.1while语句3.2循环结构第3章流程控制语句Java语言程序设计该循环先执行循环体,即使条件表达式的值一开始就为false,循环体中不包含对循环条件的修改,也不会造成死循环。循环结构的分号必不可少。该循环先执行循环体,即使条件表达式的值一开始就为false,循环体中不包含对循环条件的修改,也不会造成死循环。循环结构的分号必不可少。3.2.1do-while语句3.2循环结构第3章流程控制语句Java语言程序设计【例3-6】用do-while语句计算1+2+3+4+......+100的结果。
3.2循环结构第3章流程控制语句Java语言程序设计
程序运行结果为:1+2+3+…+100的和为50503.2.2do-while语句3.2循环结构第3章流程控制语句Java语言程序设计表达式1完成初始化的作用,可以定义循环变量的初值;表达式2完成循环条件判断作用,规定循环的终点,如果没有该判断表达式,那么此循环就成了死循环;表达式3完成循环变量递增或递减的作用,从而结束循环。3.2.3for循环语句3.2循环结构第3章流程控制语句Java语言程序设计for循环语句执行时,首先执行初始化操作(表达式1),然后判断循环条件是否满足(表达式2),如果满足,则执行循环体中的语句,最后执行循环变量控制部分(表达式3),完成一次循环后再对循环条件进行判断,直到循环的条件不满足结束整个循环。3.2.3for循环语句3.2循环结构第3章流程控制语句Java语言程序设计【例3-7】用for语句计算1+2+3+4+......+100的结果。3.2循环结构第3章流程控制语句Java语言程序设计3.2.3for循环语句3.1分支结构第3章流程控制语句Java语言程序设计
程序运行结果为:1+2+3+…+100的和为50503.1分支结构第3章流程控制语句Java语言程序设计表达式1,表达式3可以省略为空表达式1和表达式3可以用逗号语句进行多个操作表达式1、2、3都省略的话,循环体必须要出现结束循环条件的语句。表达式3完成递增或者递减,不一定是加减1,也可根据需要完成递增或者递减。比如:1到100奇数或者偶数求和,循环变量可改成i=i+2。3.2.3for循环语句在一个循环的循环体内又包含另一个循环,称为循环的嵌套。被嵌入的循环又可以嵌套循环,这就是多重循环。以二重循环为例,被嵌入的循环是内循环,包含内循环的循环是外循环。3.2.4多重循环3.2循环结构第3章流程控制语句Java语言程序设计for循环语句执行时,首先执行初始化操作(表达式1),然后判断循环条件是否满足(表达式2),如果满足,则执行循环体中的语句,最后执行循环变量控制部分(表达式3),完成一次循环后再对循环条件进行判断,直到循环的条件不满足结束整个循环。3.2.3for循环语句3.2循环结构第3章流程控制语句Java语言程序设计【例3-8】多重循环举例。程序功能:求2-100之间的素数。3.2循环结构第3章流程控制语句Java语言程序设计3.2.4多重循环3.1分支结构第3章流程控制语句Java语言程序设计packagechapter03;publicclassPrimeNumber{publicstaticvoidmain(String[]args){inti,k;for(k=2;k<=100;k++){//外循环控制2-100for(i=2;i<k;i++){//内循环判断是否素数if(k%i==0){//条件为真说明不是素数break;//跳出当前循环即内循环}}if(i==k)//条件为真说明是素数System.out.print(k+“”);//打印素数,并用空格隔开}}}素数又称质数。指在一个大于1的自然数中,除了1和该整数自身外,不能被其它自然数整除的数。3.3跳转语句
跳转语句的作用是改变程序的执行流程。Java语言提供了4种跳转语句:break、continue、return和throw。Java语言程序设计第3章流程控制语句break语句通常主要用于switch分支结构和循环结构中。在switch语句中,其作用是强制退出switch结构,执行switch结构后面的语句。用在单层循环结构的循环体中,其作用是强制退出循环结构。若程序中有内外双重循环,则只能退出内循环(如例3-8),进入外循环的下一轮循环。若想退出外循环,则可使用带标号的break语句。3.3.1break语句3.3跳转语句第3章流程控制语句Java语言程序设计【例3-9】break语句举例。程序功能:程序只计算了1+2+3+4+......+50的结果,后边的循环全部没有执行,即当i=51的时候,循环就结束了。
3.3跳转语句第3章流程控制语句Java语言程序设计
packagechapter03;publicclassJump_Break{//程序只计算了1+2+3+4+......+50的结果,后边的循环全部没有执行,即当i=51的时候,循环就结束了。publicstaticvoidmain(String[]args){//“break”语句用来结束循环,即不再执行后边的所有循环。intresult=0;for(inti=1;i<=100;i++){if(i>50)break;//break跳转语句result+=i;}System.out.println(result); 3.3.1break语句第3章流程控制语句Java语言程序设计3.3跳转语句continue意为“继续”,只能用于循环结构中,当程序执行到continue语句时,意味着结束本轮循环,continue后的语句不再执行,进入下一轮循环。若要到指定位置,也可使用带标号的循环的continue语句。3.3.2continue语句3.3跳转语句第3章流程控制语句Java语言程序设计【例3-10】
continue语句举例。程序功能:程序进行从1到100之间除51-60外的整数求和。
第3章流程控制语句Java语言程序设计3.3跳转语句3.3.2continue语句第3章流程控制语句Java语言程序设计3.3跳转语句3.3.2continue语句3.3跳转语句第3章流程控制语句Java语言程序设计return语句用于方法体中,它的作用是退出该方法,并返回指定数值,使用程序的流程转到调用该方法的下一条语句,return语句格式有:return表达式、变量或数值
方法有返回值,方法的类型为非void类型。return;方法没有返回值,即方法的类型为void类型。3.3.3return语句3.3跳转语句第3章流程控制语句Java语言程序设计Java语言中,当某行代码添加断点后,系统在运行到该行代码的时候会停止。借助断点的功能,可以帮助开发人员完成程序中问题的跟踪与调试。3.4程序断点调试第3章流程控制语句Java语言程序设计3.5.1案例情景:猜数游戏。程序功能:编写一个猜数游戏程序随机给定一个1-100之间的被猜整数,从键盘上反复输入整数进行试猜。未猜中时,提示数过大或过小直到所猜次数用完;猜中时,指出猜的次数。
第3章流程控制语句Java语言程序设计3.5案例分析3.5案例分析第3章流程控制语句Java语言程序设计3.5.2程序运行效果1
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 我国侵权责任制度
- 打包及岗位责任制度
- 执纪办案安全责任制度
- 承诺责任制度
- 拼装部安全生产责任制度
- 接访五包责任制度
- 收费站疫情防控责任制度
- 政府档案员岗位责任制度
- 教师24小时责任制度
- 教育均衡领导责任制度
- 2026年及未来5年市场数据中国旅游食品行业发展运行现状及发展趋势预测报告
- 2026年商业银行支行行长竞聘管理能力面试问题含答案
- 2025年湖南中烟考试笔试及答案
- 2025-2026学年教科版(新教材)小学科学三年级下册(全册)课时练习(附目录)
- 主题一 学生实验 化学实验基本操作(课件)-【中职专用】高中化学同步课堂(高教版2023·农林牧渔类)
- 2026年度交通运输部所属事业单位第三批统一公开招聘参考考试试题及答案解析
- 安全环保检查表(样表)
- 雨课堂学堂在线学堂云商务英语翻译(Business English Translation Interpretation)西北工业大学单元测试考核答案
- 分众化健康传播:不同人群的科普策略
- 高值耗材销售管理制度(3篇)
- 2025年甘肃省平凉市崆峒区上杨回族乡新庄湾村招聘行政村村文书备考题库及答案详解(全优)
评论
0/150
提交评论