《Java程序流程结构课件》由会员分享,可在线阅读,更多相关《Java程序流程结构课件(57页珍藏版)》请在金锄头文库上搜索。
1、 第3讲 Java程序流程结构授课课时:授课课时:8 8课时(课时(360360分钟)分钟)主编:刘志成主编:刘志成2主要内容主要内容本课目标本课目标新课引入与项目展示新课引入与项目展示案例案例1 判断指定数的奇偶性判断指定数的奇偶性 案例案例2 求求BMI健康体重指数健康体重指数 案例案例3 百分制成绩到五级制的转换百分制成绩到五级制的转换 案例案例4 计算计算1到到100的累加和的累加和 案例案例5 猜数字游戏猜数字游戏案例案例6 查找查找100以内的素数以内的素数 课堂实践课堂实践巩固与提高巩固与提高3本课目标本课目标知识知识目标目标掌握简单掌握简单ifif语句和嵌套语句和嵌套ifif语
2、句在条件结构中的用法语句在条件结构中的用法 熟悉熟悉switchswitch语句在多分支结构中的用法语句在多分支结构中的用法 掌握循环语句的用法掌握循环语句的用法 了解了解breakbreak语句、语句、continuecontinue语句等跳转语句语句等跳转语句 技能技能目标目标能编写简单条件或复杂条件结构的程序能编写简单条件或复杂条件结构的程序 能编写具有简单循环或多重循环结构的程序能编写具有简单循环或多重循环结构的程序 能调试程序能调试程序 态度态度目标目标严谨认真的工作态度严谨认真的工作态度语言表达和与人沟通能力语言表达和与人沟通能力养成规范化编程的习惯养成规范化编程的习惯4教学情境引
3、入新课教学情境引入新课 掌握简单掌握简单ifif语句和嵌套语句和嵌套ifif语句、语句、 switchswitch语句、语句、forfor语句、语句、whilewhile语句和语句和do-whiledo-while语句的用法,熟练掌握语句的用法,熟练掌握JavaJava的流程控制语句的流程控制语句的用法,并能够运用到实际程序开发中。的用法,并能够运用到实际程序开发中。 工作任务工作任务项目展示项目展示5教师示范与讲解教师示范与讲解1 1任务一:绘制程序流程图任务一:绘制程序流程图任务二:编写判断指定数的奇偶性的应用程序任务二:编写判断指定数的奇偶性的应用程序案例分析案例分析6 简单if语句vi
4、f语句,也称句,也称为条件条件语句,是根据句,是根据给定条件定条件进行判定,以决定行判定,以决定执行行某个分支程序段。某个分支程序段。v语句句结构形式如下:构形式如下:if (条件表达式条件表达式) 执行行语句句块1; 或或if(条件表达式条件表达式) 语句句块1;else 语句句块2; 7 课堂演示-判断指定数的奇偶性v【案例案例3-1】判断指定数的奇偶性判断指定数的奇偶性【案例学【案例学习目目标】熟悉熟悉if语句和句和if-else语句的用法,会句的用法,会应用用if语句句编写写进行条件判断的程序行条件判断的程序。【案例知案例知识要点要点】if语句的用法、句的用法、if-else语句的用法
5、、句的用法、简单条件条件结构流程构流程图的的绘制制。【案例完成步案例完成步骤】绘制程序流程制程序流程图编写程序写程序编译并运行程序并运行程序8 课堂演示-判断指定数的奇偶性v程序流程程序流程图9 课堂演示-判断指定数的奇偶性v编写程序写程序import java.util.Scanner;public class EvenOrOdd public static void main(String args) Scanner sc = new Scanner(System.in);System.out.println(请输入数字:入数字:);int iNum = sc.nextInt();/获取取
6、键盘输入入if(iNum%2=0) System.out.println(数字数字 + iNum + 为偶数偶数);elseSystem.out.println(数字数字 + iNum + 为奇数奇数); 10 课堂演示-判断指定数的奇偶性v运行运行结果果11学生模仿1任务一:学生模仿完成任务一:学生模仿完成【案例案例3-1】绘制程序流程绘制程序流程图图任务二:学生模仿完成任务二:学生模仿完成【案例案例3-1】判断一个数的判断一个数的奇偶性程序的编写奇偶性程序的编写12教师示范与讲解教师示范与讲解2 2任务一:编写求任务一:编写求BMI健康体重指数的程序健康体重指数的程序案例分析案例分析13
7、嵌套if语句 vif语句嵌套的形式如下:句嵌套的形式如下:if (条件表达式条件表达式1) 语句句块1;else if(条件表达式条件表达式2) 语句句块2;else if(条件表达式条件表达式3) 语句句块3; else if(条件表达式条件表达式m) 语句句块m;else 语句句 m+1;14 课堂演示-求BMI健康体重指数v【案例案例3-2】求求BMI健康体重指数健康体重指数 【案例案例详细描述描述】BMI指数(身体指数(身体质量指数,英文量指数,英文为BodyMassIndex,简称称BMI),是用体重公斤除以身高米平方得出),是用体重公斤除以身高米平方得出的数字,是目前国的数字,是目
8、前国际上常用的衡量人体胖瘦程度以及是否健康的一上常用的衡量人体胖瘦程度以及是否健康的一个个标准。它的准。它的计算公式算公式为:BMI指数指数=体重(体重(KG)身高(身高(M)的平)的平方方【案例学【案例学习目目标】熟悉熟悉if语句和句和if-else语句的用法,会句的用法,会应用嵌套用嵌套if语句句进行比行比较复复杂的条件判断的程序的的条件判断的程序的编写。写。【案例知案例知识要点要点】if语句的用法、句的用法、if-else语句的用法、嵌套句的用法、嵌套if语句的句的用法、复用法、复杂条件条件结构流程构流程图的的绘制制。【案例完成步案例完成步骤】绘制程序流程制程序流程图编写程序写程序编译并
9、运行程序并运行程序15 课堂演示-求BMI健康体重指数v程序流程程序流程图16 课堂演示-求BMI健康体重指数v编写程序写程序import java.util.Scanner;public class CalcBMI public static void main(String args) Scanner sc = new Scanner(System.in);float fHeight,fWeight,fBmi;System.out.println(请输入您的体重入您的体重(kg):);fWeight=sc.nextFloat();System.out.println(请输入您的身高入您的身
10、高(m):);fHeight=sc.nextFloat();fBmi=fWeight/(fHeight*fHeight);System.out.println(您的您的BMI指数指数为:+fBmi);17 课堂演示-求BMI健康体重指数if (fBmi=18.5 & fBmi=25 & fBmi=30 & fBmi=35 & fBmi40)System.out.println(您的健康状况您的健康状况:中度肥胖中度肥胖);elseSystem.out.println(您的健康状况您的健康状况:重度肥胖重度肥胖); 18 课堂演示-求BMI健康体重指数v运行运行结果果19学生模仿2任务一:学生模
11、仿完成任务一:学生模仿完成【案例案例3-2】的内容的内容20教师示范与讲解3任务一:编写从百分制成绩到五级制的转换的程序任务一:编写从百分制成绩到五级制的转换的程序案例分析案例分析21 switch语句 vswitch语句的一般形式如下:句的一般形式如下:switch(表达式表达式) case 值1:语句句组1;break;case 值2:语句句组2;break; case 值n:语句句组n;break;default:语句句组;22 课堂演示百分制成绩到五级制的转换v【案例案例3-3】百分制成百分制成绩到五到五级制的制的转换【案例案例详细描述描述】从从键盘输入百分制的成入百分制的成绩,将其,
12、将其转换为A、B、C、D、E 5个等个等级输出。出。转换的的规则为:90-100分分为A,80-89为B,70-79为C,60-69为D,60分以下分以下为E。【案例学【案例学习目目标】熟悉熟悉switch语句的用法,会句的用法,会应用用switch语句句进行条件判断的程序的行条件判断的程序的编写。写。【案例知案例知识要点要点】switch语句的用法、句的用法、switch语句与句与if-else语句的比句的比较、多分支、多分支结构流程构流程图的的绘制。制。【案例完成步案例完成步骤】绘制程序流程制程序流程图编写程序写程序编译并运行程序并运行程序23 课堂演示-百分制成绩到五级制的转换v程序流程
13、程序流程图24 课堂演示-百分制成绩到五级制的转换v编写程序写程序import java.util.Scanner;public class ScoreToGrade public static void main(String args) char cGrade;int iScore;Scanner sc=new Scanner(System.in);System.out.println(请输入成入成绩:);iScore=sc.nextInt();switch(iScore/10)case 10:cGrade=A;break;case 9:cGrade=A;break;case 8:cGra
14、de=B;break;case 7:cGrade=C;break;case 6:cGrade=D;break;default: cGrade=E;System.out.println(您的成您的成绩为:+iScore+t+等等级为:+cGrade); 25 课堂演示-百分制成绩到五级制的转换v运行运行结果果26学生模仿3任务一:学生模仿完成任务一:学生模仿完成【案例案例3-3】的内容的内容27教师示范与讲解4任务一:编写计算任务一:编写计算1到到100的累加和的程序的累加和的程序案例分析案例分析28 for语句vfor语句是最灵活也是最常用的循句是最灵活也是最常用的循环结构。构。for语句句的
15、一般格式如下:的一般格式如下: for(初初值表达式;条件表达式;循表达式;条件表达式;循环过程表达式程表达式) 循循环语句区句区块;v其中:初其中:初值表达式表达式对循循环变量量赋初初值;条件表达式;条件表达式用来判断循用来判断循环是否是否继续执行;循行;循环过程表达式完成程表达式完成修改循修改循环变量,改量,改变循循环条件的任条件的任务。 29 for语句vfor语句的句的执行行过程是:程是:(1)求解初值表达式。(2)求解条件表达式,若值为true,则执行循环体语句区块,然后再执行第(3)步;若值为false,则跳出循环体语句。(3)求解循环过程表达式,然后转去执行第(2)步。30 课堂
16、演示-计算1到100的累加和v【案例案例3-4】计算算1到到100的累加和的累加和【案例学【案例学习目目标】熟悉熟悉for语句的用法,会句的用法,会应用用for语句句进行循行循环程序的程序的编写。写。【案例知案例知识要点要点】for语句的用法、句的用法、for循循环的流程的流程结构、构、for循循环结构流程构流程图的的绘制。制。【案例完成步案例完成步骤】绘制程序流程制程序流程图编写程序写程序编译并运行程序并运行程序31 课堂演示-计算1到100的累加和v程序流程程序流程图32 课堂演示-计算1到100的累加和v编写程序写程序public class Add1_100 public static
17、 void main(String args) int i,iSum=0;for(i=1;iiSource)strGuess=JOptionPane.showInputDialog(大大了了,请重新猜重新猜:);iGuess=Integer.parseInt(strGuess);else if (iGuessiSource)strGuess=JOptionPane.showInputDialog(小小了了,请重新猜重新猜:);iGuess=Integer.parseInt(strGuess);System.out.println(恭喜你恭喜你,猜猜对了了!); 42 课堂演示-猜数字游戏v运行
18、运行结果果43学生模仿5任务一:学生模仿完成任务一:学生模仿完成【案例案例3-5】的内容的内容44教师示范与讲解6任务一:编写查找任务一:编写查找100以内的素数的程序以内的素数的程序案例分析案例分析45 循环语句嵌套 v循循环语句嵌套是指在循句嵌套是指在循环体中包含有循体中包含有循环语句的情句的情况。况。v循循环语句有句有while语句、句、do-while语句和句和for语句,句,它它们可以自身可以自身进行嵌套,也可以相互嵌套,但是需行嵌套,也可以相互嵌套,但是需要注意的是嵌套的完整性,不允要注意的是嵌套的完整性,不允许出出现相互交叉。相互交叉。 46 课堂演示-查找100以内的素数 v【
19、案例案例3-6】查找找100以内的素数以内的素数 【案例学【案例学习目目标】熟悉嵌套循熟悉嵌套循环语句的用法,会句的用法,会应用嵌套循用嵌套循环进行循行循环程序的程序的编写。写。【案例知案例知识要点要点】嵌套循嵌套循环的用法、嵌套循的用法、嵌套循环的流程的流程结构、嵌构、嵌套循套循环结构流程构流程图的的绘制。制。【案例完成步案例完成步骤】绘制程序流程制程序流程图编写程序写程序编译并运行程序并运行程序47 课堂演示-查找100以内的素数 v程序流程程序流程图48 课堂演示-查找100以内的素数 v编写程序写程序public class FindPrime public static void m
20、ain(String args) int num=0;int i=0;for(num=1;num=100;num+)for(i=2;i(num/2)System.out.print(num);System.out.print(t); 49 课堂演示-查找100以内的素数 v运行运行结果果50学生模仿6任务一:学生模仿完成任务一:学生模仿完成【案例案例3-6】的内容的内容51 跳转语句 v跳跳转语句用来直接控制程序的句用来直接控制程序的执行流程,可用于改行流程,可用于改变switch、for、while、do-while的正常行的正常行为。Java语句提供了句提供了3种跳种跳转语句:句:brea
21、k语句、句、continue语句和句和label语句。句。 vbreak语句通常适用于在循句通常适用于在循环体中通体中通过if判定退出循判定退出循环条件条件 vcontinue语句与句与break语句不同,句不同,continue语句并句并不不终止当前的循止当前的循环,而是不再,而是不再执行行continue后面的后面的Java语句,句,结束本次的循束本次的循环,继续执行下一次的循行下一次的循环语句。句。 52 调试Java程序 v为了方便了方便调试程序,需要在代程序,需要在代码中中设置一个断点置一个断点 v设置一个断点,在置一个断点,在编辑器左器左边灰色灰色边缘双双击 v进入入调试状状态后,
22、后,调试视图的的标题栏提供了控制提供了控制Java程序程序执行的工具行的工具栏,前面几个按,前面几个按钮(Resume、Suspend、Terminate、Step Into和和Step Over等),允等),允许暂停、停、继续、终止和止和单步步调试程序等程序等 v调试视图的右的右边是一个是一个标签视窗包含窗包含视图,在,在这里里可以可以检查和修改和修改变量和断点量和断点 53 设置断点 54 单步调试 55课堂实践课堂实践 实践要求实践要求 1. 1.实践目标分析实践目标分析(1)(1)从键盘输入从键盘输入n n个整数,求这个整数,求这n n个数中的最大值个数中的最大值 (2)(2)编写计算
23、个人所得税的程序编写计算个人所得税的程序(3)(3)编写一个显示编写一个显示“九九乘法口决表九九乘法口决表”的的JavaJava程程序,并要求在程序中对语句进行适当的说明序,并要求在程序中对语句进行适当的说明 56本课小结本课小结 1. 1.掌握简单掌握简单ifif语句和嵌套语句和嵌套ifif语句在条件结语句在条件结构中的用法构中的用法 2. 2.熟悉熟悉switchswitch语句在多分支结构中的用法语句在多分支结构中的用法 3. 3.掌握循环语句的用法掌握循环语句的用法 4. 4.了解了解breakbreak语句、语句、continuecontinue语句等跳转语语句等跳转语句句 57课外拓展课外拓展 1. 1.从最近从最近1010年程序员考试试题中完成与本章相年程序员考试试题中完成与本章相关知识点的题目关知识点的题目 2. 2.编写一个从键盘输入年份和月份,要求显示编写一个从键盘输入年份和月份,要求显示指定月份的天数的程序。指定月份的天数的程序。