Java程序设计-3-流程控制hdl.pptx
《Java程序设计-3-流程控制hdl.pptx》由会员分享,可在线阅读,更多相关《Java程序设计-3-流程控制hdl.pptx(59页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、JavaJava程序设计程序设计第三章第三章 流程控制流程控制1理解程序控制的概念理解程序控制的概念运用条件语句,使用运用条件语句,使用if,switchif,switch来控制程序的不同执来控制程序的不同执行路径行路径掌握掌握forfor、whilewhile和和dodo句型结构控制程序的循环执行句型结构控制程序的循环执行理解并能应用理解并能应用breakbreak、continuecontinue和和returnreturn调整程序中调整程序中的流程控制结构。的流程控制结构。理解并使用断言对程序进行调试理解并使用断言对程序进行调试掌握掌握JavaJava语言中不同注释形式的区别语言中不同注
2、释形式的区别掌握利用掌握利用ScannerScanner类实现基本的输入方法类实现基本的输入方法理解并能使用理解并能使用System.outSystem.out对象中的不同输出方法对象中的不同输出方法掌握基本的编程技巧。掌握基本的编程技巧。2程序程序程序表现为完成某个功能程序表现为完成某个功能(目标目标)而编写的指令而编写的指令集合。集合。在整体上,程序运行是按照事先编写的指令在整体上,程序运行是按照事先编写的指令(语语句句)从前到后的顺序执行,但在执行的过程中,从前到后的顺序执行,但在执行的过程中,经常会遇到基于不同条件的决策来执行不同的经常会遇到基于不同条件的决策来执行不同的指令,抑或重复
3、执行事先定义的指令来达到某指令,抑或重复执行事先定义的指令来达到某种目的,但总体上程序总是顺序执行的。种目的,但总体上程序总是顺序执行的。3一个例子一个例子编写一个程序,声明编写一个程序,声明3 3个整型变量,用来保存个整型变量,用来保存3 3个学生的考试分数,计算他们的平均分个学生的考试分数,计算他们的平均分(float(float类型类型)并输出。并输出。4进一步的进一步的u如果某个学生的成绩低于如果某个学生的成绩低于6060分,则不参与平均分分,则不参与平均分计算。计算。5在进一步在进一步u如果有如果有5050个学生个学生的成绩已经保存的成绩已经保存在一个整型数组在一个整型数组中,同样基
4、于上中,同样基于上面规则来计算这面规则来计算这批学生的平均分。批学生的平均分。63.1 3.1 句、块和空白句、块和空白构成构成JavaJava程序的最小单位是类,而类则是由属程序的最小单位是类,而类则是由属性和方法构成。方法代表了某个具体的能力,性和方法构成。方法代表了某个具体的能力,具体的一个方法就是由为完成某个功能而编写具体的一个方法就是由为完成某个功能而编写的若干条语句组成。的若干条语句组成。73.1.1 3.1.1 语句语句在在JavaJava编程语言中,语句是一行由分号编程语言中,语句是一行由分号(;)(;)终止的终止的代码,它是一个完整的可执行单元。代码,它是一个完整的可执行单元
5、。例如例如utotals=a+b+c+d+e+ftotals=a+b+c+d+e+f;与下式相同与下式相同u total=a+b+c+total=a+b+c+u d+e+f;d+e+f;8在在JavaJava中,主要有以下的语句类型中,主要有以下的语句类型 u声明语句声明语句uint a=0;/int a=0;/声明了一个整型变量声明了一个整型变量uStudent stu;/Student stu;/声明了一个类型是声明了一个类型是StudentStudent的对象的对象u表达式语句表达式语句 u赋值表达式,自增表达式、方法调用、对象创建都可以和分号一赋值表达式,自增表达式、方法调用、对象创建
6、都可以和分号一起构成起构成“表达式语句表达式语句”uSystem.out.println(“Welcome”);/System.out.println(“Welcome”);/输出字符串输出字符串ua=Math.abs(-3.1);/a=Math.abs(-3.1);/返回绝对值返回绝对值uvalue=100;/value=100;/为变量赋值为变量赋值ua+;/aa+;/a自增自增uStudent stu=new Student(“Student stu=new Student(“张华张华”);/”);/创建一个创建一个StudentStudent类的实例,实例引用名为类的实例,实例引用名为
7、stustuu控制语句控制语句93.1.2 3.1.2 语句块语句块一个块一个块(block)(block)或一个复合语句是以上括号和或一个复合语句是以上括号和下括号下括号 为边界的语句集合;为边界的语句集合;块语句也被用来组合属于某个类的语句。块语句也被用来组合属于某个类的语句。语句块可被嵌套。语句块可被嵌套。/a block/a block 语句语句 u u x=y+1;x=y+1;u y=x+1;y=x+1;u 10/类声明所包含的块语句类声明所包含的块语句 upublic class MyDate public class MyDate u int day;int day;u int
8、month;int month;u int year;int year;u 11/一个嵌套块语句的例子一个嵌套块语句的例子while(i large)/循环语句快开始,用循环语句快开始,用表示表示 a=a+i;if(a=max)/判断语句快开始,用判断语句快开始,用表示表示 b=b+a;a=0;/判断语句块结束,用判断语句块结束,用表示表示 /循环语句快结束,用循环语句快结束,用表示表示123.1.33.1.3空白空白在源代码元素之间允许空白,空白的数量不限。空白在源代码元素之间允许空白,空白的数量不限。空白(包括空格、包括空格、tabstabs和新行和新行)可以改善源代码的视觉感受。可以改善
9、源代码的视觉感受。u uint x;int x;ux=23+54;x=23+54;u u u int x int xu x =23 +54;x =23 +54;u 133.23.2逻辑判断和循环控制逻辑判断和循环控制程序控制可以定义为对程序语句的执行顺序进程序控制可以定义为对程序语句的执行顺序进行的规定。行的规定。JavaJava提供了条件语句在两种或更多的情况中做提供了条件语句在两种或更多的情况中做出选择,根据情况执行不同的程序语句;出选择,根据情况执行不同的程序语句;JavaJava也提供了更有效的循环语句以控制那些需也提供了更有效的循环语句以控制那些需要重复执行的语句。要重复执行的语句。
10、143.2.1 3.2.1 条件判断与决策条件判断与决策 1 if,else1 if,else语句语句简单的单分支语句简单的单分支语句uif(if(布尔表达式布尔表达式)u 语句或块;语句或块;u例如例如uif(score 60)if(score 60)u System.out.println(“System.out.println(“下次努力哦下次努力哦!”);!”);u 153.2.1 3.2.1 条件判断与决策条件判断与决策(cont.)(cont.)简单的双分支语句简单的双分支语句uif(if(布尔表达式布尔表达式)u 语句或块;语句或块;u else else u 语句或块;语句或块
11、;u 例如例如uif if(score 60score 60)u System.out.println(“System.out.println(“下次努力哦下次努力哦!”);!”);uelseelseu System.out.println(“System.out.println(“恭喜你通过考试恭喜你通过考试!”);!”);u 16expBAFT选择结构选择结构173.2.1 3.2.1 条件判断与决策条件判断与决策(cont.)(cont.)嵌套的嵌套的 if,else if,elseuif(if(布尔表达式布尔表达式1)1)u 语句或块;语句或块;uelse else if(if(布尔表
12、达式布尔表达式2)2)u 语句或块;语句或块;u elseelseu 语句或块;语句或块;u 18例如例如if(score 60)System.out.println(“下次努力哦下次努力哦!”);else if(score 2)if(y 2)int z=x+y;System.out.println(“z is”+z);else System.out.println(“x is”+x);24课堂练习课堂练习(c.)(c.)指出输出结果指出输出结果 x=2;y=3;if(x 2)if(y 2)int z=x+y;System.out.println(“z is”+z);else System.o
13、ut.println(“x is”+x);25课堂练习课堂练习(c.)(c.)执行下列执行下列switchswitch语句后语句后y y是多少?是多少?u x=3;x=3;u switch(x+3)switch(x+3)u case 6:y=1;case 6:y=1;u default:y+=1;default:y+=1;u 26课堂练习课堂练习(c.)(c.)有一个函数如下,根据指定的有一个函数如下,根据指定的x x,输出,输出y y值值uy=y=X x12X-1 1=x=10写出程序,根据给出的百分制成绩,输出成绩等写出程序,根据给出的百分制成绩,输出成绩等级级AA、B B、C C、D D
14、、E,90 E,90分以上为分以上为A A,80808989为为B B,70707979为为C C,60606969为为D D,6060分以下为分以下为E E。27课堂练习课堂练习(c.)(c.)编写一个程序,根据命令行参数将对应的编写一个程序,根据命令行参数将对应的1 1、2 2、3 3、4 4、5 5、6 6、7 7分别输出为星期一、星期二分别输出为星期一、星期二.星期日,如:星期日,如:uJava WeekDay 1Java WeekDay 1u星期一星期一28思考题思考题如何提高多分支下的程序执行效率?如何提高多分支下的程序执行效率?293.2.2 3.2.2 循环循环循环语句使语句或
15、块的执行得以重复进行。循环语句使语句或块的执行得以重复进行。JavaJava编程语言支持三种循环构造类型:编程语言支持三种循环构造类型:for,for,whilewhile和和do do 循环。循环。uforfor和和whilewhile循环是在执行循环体之前测试循环条循环是在执行循环体之前测试循环条件件udo do 循环是在执行完循环体之后测试循环条件。循环是在执行完循环体之后测试循环条件。u这就意味着这就意味着forfor和和whilewhile循环可能连一次循环体都循环可能连一次循环体都未执行,未执行,而而dodo循环将至少执行一次循环体。循环将至少执行一次循环体。30FSTexp直到型
16、循环直到型循环当型循环当型循环TexpSF31forfor循环的句法是:循环的句法是:u for(init_expr;boolean testexpr;alter_expr)for(init_expr;boolean testexpr;alter_expr)ustatement or blockstatement or blocku u 例如:例如:ufor(int i=0;i 10;i+)for(int i=0;i 10;i+)uSystem.out.println(i=+i);System.out.println(i=+i);u 32增强的增强的forfor循环循环public class
17、 ForEnhancedDemo public static void main(String args)int arrayOfInts=32,87,3,589,12,1076,2000,8,622,127;for(int element:arrayOfInts)System.out.print(element+);System.out.println();33whilewhile循环的句法:循环的句法:uwhile (while (布尔表达式布尔表达式)u 语句或块语句或块 uint i=0;while(i 10)System.out.println(i=+i);i+;System.out.
18、println(Finally!);34dodo循环的句法是:循环的句法是:udo do u 语句或块;语句或块;uwhile(while(布尔测试布尔测试)int i=0;do System.out.println(i=+i);i+;while(i 10);System.out.println(Finally!);35思考题思考题怎么决定使用哪类循环?怎么决定使用哪类循环?36循环的嵌套循环的嵌套在一个循环体内又包含了另一个完整的循环结在一个循环体内又包含了另一个完整的循环结构,成为嵌套循环。如构,成为嵌套循环。如:while(循环条件)(循环条件)语句;语句;while(循环条件)(循环条
19、件)语句;语句;语句;语句;373.2.3 3.2.3 跳转跳转下列语句可被用在更深层次的控制循环语句中:下列语句可被用在更深层次的控制循环语句中:ubreak break 标注;标注;ucontinuecontinue标注;标注;ulabel:label:语句;语句;Label:Label:被用来标识循环构造的复合语句。被用来标识循环构造的复合语句。breakbreak语句被用来从语句被用来从switchswitch语句、语句、forfor语句等循环语句等循环语句的块中退出到预先设定的语句的块中退出到预先设定的labellabel处。当程序处。当程序运行到运行到break break 标注处
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java 程序设计 流程 控制 hdl
限制150内