ch03-1.程序流程控制

上传人:tian****1990 文档编号:75743650 上传时间:2019-02-01 格式:PPT 页数:31 大小:5.07MB
返回 下载 相关 举报
ch03-1.程序流程控制_第1页
第1页 / 共31页
ch03-1.程序流程控制_第2页
第2页 / 共31页
ch03-1.程序流程控制_第3页
第3页 / 共31页
ch03-1.程序流程控制_第4页
第4页 / 共31页
ch03-1.程序流程控制_第5页
第5页 / 共31页
点击查看更多>>
资源描述

《ch03-1.程序流程控制》由会员分享,可在线阅读,更多相关《ch03-1.程序流程控制(31页珍藏版)》请在金锄头文库上搜索。

1、Java程序设计,第三章&1 程序流程控制,余 烨, http:/,本节学习提示, 本节主要学习Java语言的控制结构,包括, 顺序结构, 分支结构, 循环结构, break和continue语句的用法,目,录,1,基本控制结构,2,分支结构,3,循环结构,基本控制结构, 结构化程序设计的原则及三种基本结构, 原则:1自顶向下,2逐步求精 3模块化 4限制使用goto语句, 三大流程控制结构,顺序结构,分支结构(选择结构),循环结构,基本控制结构,顺序结构,(Sequence Structure),选择结构,(Selection Structure),循环结构,(Repetition Stru

2、cture),顺序结构, 让程序可以顺序的执行,int a = 7; System.out.println(“a=”+a); System.out.println(“Hello!”); a+; System.out.println(“a=” +a ); a-; System.out.println(“a=” +a );,分支结构,分支结构,是在两条或多条(两条以上)执 行路径中选择一条执行的控制结构 单分支,if(条件表达式) 语句组; ,False,True,条件?,语句块1,例子,编写一个程序,可以输入考试的分数,如果 分数高于500,则输出“分数高于500,你可 以免试上研究生,且拥有全

3、额奖学金!”; 读程序,Example3_01,if - else,Ifelse 语句格式,1.,2.,3.,4.,5.,6.,if (条件) ,(语句块1),else ,(语句块2),false,true,条件?,语句块2,语句块1, 括号中的条件是逻辑表达式, 其值为true执行语句块1 其值为false 执行语句块2, 两种情况在完成各自的任务之后,于if的下一条语句会合。, 例子,编写一个程序,可以输入考试的分数,如果 分数高于500,则输出“分数高于500,你可 以免试上研究生,且拥有全额奖学金!”, 否则,输出“没有达到免研要求,你要参与 全国研究生招生考试!”,Example3_

4、01,分支结构, 多分支,if(条件表达式1) 语句组1; else if (条件表达式2) 语句组2; else 语句组3; , 例子,编写一个程序,可以输入学生的总分数,如果分数高于650, 则输出“恭喜你获得了全额奖学金”;如果分数在400-650之 间,则输出“恭喜你获得了免交学费的待遇”;否则,输出 “你需要交今年的学费8000元!”, , ,public class Example3_03 public static void main(String args) int score = Integer.parseInt(args0); String prize; if(score

5、= 90) prize = “国家奖“; else if (score = 85) prize = “first prize“; else if (score = 80) prize = “second prize“; else if (score = 75) prize = “third prize“; else prize = “no prize“; System.out.println(prize); ,Switch 语句, ,Switch(表达式) case 值1: 语句块1; break; case 值2: 语句块2; break; case 值3: 语句块3; break; cas

6、e 值n: 语句块n; break; default: 语句块n+1; ,Case 1,语句块1,case 2,语句块2,表达式,Case 3,case 4,语句块4,语句块3,1. Switch 语句中的表达式的数据类型可以 是byte、char、short、int类型,不允许 浮点型和long型。,2. 根据表达式值与case语句后面的匹配情况 决定程序执行的分支,3. 每个case 语句都要有break语句,4. 不匹配的情况执行 default 语句,Switch语句, 例子, 请输入您需要购买的玫瑰花支数,我会告诉您它,的含义。 1:你是我的唯一 3:我爱你 4:天长地久 11:爱你

7、,一心一意 else:means nothing,Example3_04,下面代码会产生什么样的输出?, ,public class test03_01 public static void main(String args) char letter = A ; switch (letter) case A: case a: System.out.println(“Some kind of A.“); case B: case b: System.out.println(“Some kind of B.“); break; default: System.out.println(“Someth

8、ing else.“); break; ,循环结构,在一定的条件下反复执行某段程序,被反,复执行的这段程序称为“循环体”, Java中有三种语句来实现循环结构:, while, do-while, for, 循环结构是程序中一种重要的基本结构,是指:,while语句,while语句的格式如下:,while(条件表达式) 3.循环体语句; 4. ,1. 2.,在循环刚开始时,会计算一次“条件表达式” 的值。,当条件为假时,将不执行循环体,直接跳转到循 环体外,执行循环体外的后续语句; 当条件为真时,便执行循环体。每执行完一次循 环体,都会重新计算一次条件表达式,当条件为 真时,便继续执行循环体,

9、直到条件为假才结束 循环。,while语句之例, /WhileOp, /用while语句计算10的阶乘 public class example03_05 ,public static void main(String args) int n=10; long result=1; while(n=1) result*=n-; System.out.println(“10!=“+result); ,do-while语句,do-while语句的格式如下:,1.,2.,3.,4.,do,循环体语句;, while(条件表达式),它先执行循环中的语句,然后再判断条件是否 为真,如果为真则继续循环;如果

10、为假,则终 止循环。因此,do-while循环至少要执行一次循 环语句,do-while循环与while循环的不同在于:,do-while语句之例,/DoWhileOp,/用do-while语句计算10的阶乘,public class example03_06 public static void main(String args) int n=10; long result=1; do result*=n- -; while(n=1); System.out.println(“10!=“ + result); ,for语句,1. 2.,for语句的格式如下:,for (表达式1;表达式2;表

11、达式3) 循环体语句; ,3. 4.,表达式1一般是一个赋值语句,它用来给循环控 制变量赋初值; 表达式2是一个布尔类型的表达式,它决定什么 时候退出循环; 表达式3一般用来修改循环变量,控制变量每循 环一次后按什么方式变化。 三个部分之间用“;”分开,for语句,for语句的执行过程:,在循环刚开始时,先计算表达式1,在这个过程 中,一般完成的是初始化循环变量或其它变量 2. 根据表达式2的值来决定是否执行循环体。表达 式2是一个返回布尔值的表达式,若该值为假, 将不执行循环体,并退出循环;若该值为真, 将执行循环体 3. 执行完一次循环体后,计算表达式3。在这个过 程中一般会修改循环变量

12、4. 转入第(2)步继续执行,1.,条件部分 (condition),初始化部分 (initialization),1.,迭代部分 (iteration),for (表达式1;表达式2;表达式3) 2. 循环部分 3.循环体语句; (repetition) 4. ,for(int i=1; i=100; i+) System.out.println(“” + i); ,for语句之例,/For Loop,/用for语句计算10的阶乘,public class example03_07 ,public static void main(String args) ,int n;,long resu

13、lt;,for (n=10,result=1; n0; n-), result*=n; ,System.out.println(“10!= “+result);, ,Example3_05,循环嵌套, 循环嵌套是指在循环体中包含有循环语句的情,况. 三种循环语句即可以自身进行嵌套,也可以相 互进行嵌套构成多重循环. 多重循环自内向外展开,即先执行内循环,后 执行外循环。多重循环不允许相互交叉., 例1:打印金字塔,* * * *,分析:把一个简单的问 题拆解成复杂的问题,Example3_06,实战环节,实战1:,分别输出1!、2!、3!、.10! 以及它们的和,实战2:,Example3_0

14、7,打印如下图形,* * * * * * * *,Example3_08,跳转语句,Java中有两种跳转语句:break语句和continue语句., break用于强行退出循环,不执行循环中剩余的语,句, continue则停止执行当前的循环,开始新的循环,break语句和continue语句都有两种使用形式:, 不带标号的break语句和continue语句, 带标号的break语句和continue语句, 只使用break只能退出内循环;要想达到从内循环,体中直接跳转出外循环的目的, 必需与label标号 语句连用,break 和 continue 之例, 不带标号的break语句和co

15、ntinue语句,依次遍历并输出1到10之间的数,若该数能被2整除, 则: 1. 使用break语句跳出循环体 【example3_09】 2. 使用continue语句终止当前循环 【example3_10】, 带标号的break语句和continue语句,【example3_11】 使用带标号break语句退出循环嵌 套 【example3_12】 使用带标号continue语句继续外循 环,本节总结, 我们主要学习了Java语言的控制结构,包括:, 顺序结构, 分支结构, 循环结构, break和continue语句的用法,作业与练习,1.,试读入一个16位的长整型,利用switch语句计算09这十个,数字中,每个字出现的次数?,2.,假如有一条绳子长3000米,每天减去

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号