《《java程序结构》ppt课件》由会员分享,可在线阅读,更多相关《《java程序结构》ppt课件(35页珍藏版)》请在金锄头文库上搜索。
1、第四章 Java程序结构,Java顺序程序设计 分支结构程序设计 循环结构程序设计 跳转语句,控制语句,通常语句在程序中都是按先后顺序执行的,控制语句用于改变程序执行的顺序。 选择语句 if语句 ifelse语句 ifelse复合结构 switch开关语句,循环语句 for循环语句 while循环语句 dowhile循环语句,控制语句,跳转语句 break语句 带标号的break语句 continue语句 带标号的continue语句 return语句,控制语句,异常处理语句 try-catch-finally语句 throw语句,控制语句,Java顺序程序设计,在顺序结构程序中,各语句是按照
2、位置的先后次序,顺序执行的,且每个语句都会被执行到。,先执行A操作 再执行B操作,例题:课本P61 例4.1,顺序结构流程图,JAVA分支结构程序设计 在一个算法中,经常会遇到一些条件的判断, 算法的流程根据条件是否成立有不同的流向.分支 结构就是处理这种过程的结构. 分类是算法中经常发生的事情,分支结构的 主要作用就是表示分类. 分支结构可用程序框图表示为下面两种形式.,步骤A,步骤B,满足条件?,否,是,步骤A,满足条件?,否,是,一.If语句的三种基本形式 (1)If单分支结构语法形式 if(表达式) 语句; 例: if(xy) System.out.print(x);,Java分支结构
3、 条件语句 if-else,语义是:如果表达式的值为真,则执行其后的语句, 否则不执行该语句。,if语句,(2)if-else双分支结构语法形式 if(表达式) 语句1; else 语句2; 例: if (xy) System.out.print(x); else System.out.print(y);,语义是:如果表达式的值为真,则执行语句1,否则执行语句2 。,if语句,(3)if多分支结构语法形式 if(表达式1)语句1; else if(表达式2)语句2; else if(表达式3)语句3; else if(表达式m)语句m; else 语句n;,(1)三种形式的if语句中在if关键
4、字后面都有“表达式”,一般为逻辑表达式或关系表达式,但也可以是其它表达式,如赋值表达式等,甚至也可以是一个变量。 例如:下面的if语句也是合法的: if(a=5) 语句; if(b) 语句; 只要表达式的值为非0,即为“真”。,(2)在if语句中,条件判断表达式必须用括号括起来, 在语句之后必须加分号。,例如:if (x0) System.out.print(x); else System.out.print(-x) ;,if语句三种形式的说明:,例如: if(ab) a+; b+; else a=0; b=10;,(3)在if和else后面可以只含一个内嵌的操作语 句,也可以有多个操作语句,
5、此时用花括号 “ ”将几个语句括起来组成一个复合语句。,if语句三种形式的说明:,定义:在 if 语句中又包含一个或多个if 语句称为if 语句的嵌套。,一般形式:,if() else,内嵌if,内嵌if,if( )语句1 else 语句2,if( )语句3 else 语句4,if语句的嵌套,注意: if 语句与else 的配对关系。 (else子句是任选的,不能单独作为语句使用,它必须和if语句配对使用),配对原则: 1.从最内层开始, else 总是与它上面最近的(未曾配对的)if 配对。,if语句的嵌套,例如: if(表达式1 ) if(表达式2) 语句1; else 语句2;,理解一:
6、 if(表达式1) if(表达式2) 语句1; else 语句2;,理解二: if(表达式1 ) if(表达式2) 语句1; else 语句2;,其中的else究竟是与哪一个if配对呢?,注意: if 语句与else 的配对关系。,配对原则:,2.避免if与else配对错位的最佳办法是加, 同时,为了便于阅读,使用适当的缩进。,if语句的嵌套,例如上例: if(表达式1 ) if(表达式2) 语句1; else 语句2;,例:任意给定3个正实数,设计一个算法,判断分别以这3个数为三边边长的三角形是否存在。若存在求出它的面积,否则显示“不存在这样的三角形。画出这个算法的程序框图。 (a、b、c的
7、值从键盘输入),条件结构,算法步骤如下: 第一步,输入3个正实数a,b,c. 第二步,判断a+bc,a+cb, b+ca是否同时成立. 第三步,若是,则求出它的面积; 否则,显示“不存在这样的三角形”。,if语句(续),例2 输入三个数a,b,c,要求按由小到大的顺序输出。,If ab 将a和b对换 If ac 将a和c对换 If bc 将b和c对换,if语句(续),public class NumberSort public static void main(String args) int a=5,b=7,c=3,t; if(ab) t=a;a=b;b=t; if(ac) t=a;a=c;
8、c=t; if(bc) t=b;b=c;c=t; System.out.print(“a=“+a+“b=“+b+“c=“+c); ,实例: NumberSort.java,if语句(续),-1 (x0) 程序1: 程序2: If(x=0) Y=-1; if(x0) y=1; Else else y=0; If(x=0) y=0; else y=-1; Else y=1;,实例:IfTest.java,switch语句,开关语句switch的语法格式为: switch (表达式) case 常量1: 语句1; break; case 常量2: 语句2; break; default: 语句n;
9、,当选择结构的分支越多时,if-else-if语句就会变得越来越难以看懂。JAVA提供了另一种多分支语句-switch语句。Switch语句是多分支的开关语句。,Switch语句把表达式返回的值与每个case子句中的值(一个常量)相比。如果匹配成功,则执行该case子句后的语句序列。,使用开关语句时,注意以下几点:,case后面的常量必须是整数或字符型,而且不能有相同的值; default子句是任选的。 通常在每一个case中都应使用break语句提供一个出口,使流程跳出开关语句。否则,在第一个满足条件case后面的所有语句都会被执行,这种情况叫做落空。 例题:课本67 例4.4,循环结构程序
10、设计,Java中提供的循环语句有: 条件循环(while) 先执行后判定循环(do-while) 确定次数循环(for),循环结构的作用是使某一段程序在满足某条件时就被重复执行,直到这个条件不满足为止的程序结构。,While循环语句,while循环的语法格式为: while (条件表达式) 循环体 其中while是关键字。每次循环之前都要计算条件表达式,其值为true时,就执行一次循环体中的语句,然后再计算条件表达式,决定是否再次执行循环体中的语句;如果条件表达式的值为false时,就跳出循环体,执行循环体后面的语句。,While循环语句,dowhile循环的语法格式为: do 循环体 whi
11、le (条件表达式); 其中do、while是关键字。程序首先执行do下面的循环体,然后计算while后面条件表达式的值,如果其值为true,则重复执行循环体,否则,就结束循环。,dowhile循环语句,表达式,循环体语句,真,假,dowhile循环语句,dowhile循环与while循环相反,是先执行循环体中的语句,再计算while后面的条件表达式,若条件表达式值为false则跳出循环,否则继续下一轮循环。 什么时候使用dowhile循环呢?有些情况下,不管条件表达式的值是为true还是false,你都希望把指定的语句至少执行一次,那么就应使用dowhile循环。,for循环语句,for语句
12、是最经常使用的循环语句,一般用在循环次数已知的情况下。在很多情况下,可以使用for语句替代while和do-while语句。,for循环的语法格式为: for (表达式1; 表达式2; 表达式3) 循环体; 其中表达式1指出计数器的初值,是一个赋值语句;表达式2指出循环结束条件,是一个逻辑表达式;表达式3指出计数器每次的增量,是一个赋值语句。,for循环语句,循环语句的嵌套,一个循环结构的循环体中还可以包含另一个完整的循环结构,这称为循环的嵌套。嵌套可以是多层的,既在内嵌的循环结构内还可以再嵌套其他的循环结构。while语句、do-while语句以及for语句都可以嵌套,而且它们之间也可以相互
13、嵌套。,public class Sum1 public static void main(String args) int n=10, sum=0; while (n0) sum=0; for (int i=1; i=n; i+) sum+=i; System.out.println(“前“+n+“个数的总和为:“+sum); n-; ,例: 用while和for循环语句实现累计求和。,循环语句的嵌套,输出结果如图所示。,循环语句小结,一个循环一般应包括四部分内容: 1初始化部分:用来设置循环的一些初始条件,计数器清零等。 2循环体部分:这是反复被执行的一段代码,可以是单语句,也可以是复合语句。 3迭代部分:这是在当前循环结束,下一次循环开始时执行的语句,常用来使计数器加1或减1。 4终止部分:通常是一个布尔表达式,每一次循环要对该表达式求值,以验证是否满足循环终止条件。,