java程序结构

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一般形式: if() if( )语句1 else 语句2 else if( )语句3 else 语句4 内嵌if
内嵌if
if语句的嵌套
注意: if 语句与else 的配对关系。 (else子句是任选 的,不能单独作为语句使用,它必须和if语句配对使 用) 配对原则: 1.从最内层开始, else 总是与它上面最近的(未曾配 对的)if 配对。


循环语句的嵌套

一个循环结构的循环体中还可以包含另一个完 整的循环结构,这称为循环的嵌套。嵌套可以 是多层的,既在内嵌的循环结构内还可以再嵌 套其他的循环结构。while语句、do-while语句 以及for语句都可以嵌套,而且它们之间也可以 相互嵌套。
例: 用while和for循环语句实现累计求和。
使用开关语句时,注意以下几点:
· case后面的常量必须是整数或字符型, 而且不能有相同的值; default子句是任选的。 · 通常在每一个case中都应使用break语句 提供一个出口,使流程跳出开关语句。 否则,在第一个满足条件case后面的所 有语句都会被执行,这种情况叫做落空。 例题:课本67 例4.4
实例:IfTest.java
switch语句
当选择结构的分支越多时,if-else-if语句就会变得越来越 难以看懂。JAVA提供了另一种多分支语句-switch语句。 Switch语句是多分支的开关语句。 开关语句switch的语法格式为: switch (表达式) { case 常量1: 语句1; break; case 常量2: 语句2; break; Switch语句把表达式返回的值与 ...... 每个case子句中的值(一个常量 default: )相比。如果匹配成功,则执行 语句n; 该case子句后的语句序列。 }

循环结构程序设计
循环结构的作用是使某一段程序在满足某 条件时就被重复执行,直到这个条件不 满足为止的程序结构。

Java中提供的循环语句有: ☆条件循环(while) ☆先执行后判定循环(do-while) ☆确定次数循环(for)
While循环语句

表达式 真 假

while循环的语法格式为: 循环体语句 while (条件表达式) { 循环体} 其中while是关键字。每次循环之前都要计算条 件表达式,其值为true时,就执行一次循环体 中的语句,然后再计算条件表达式,决定是否 再次执行循环体中的语句;如果条件表达式的 值为false时,就跳出循环体,执行循环体后面 的语句。
public class Sum1 { public static void main(String args[]) { int n=10, sum=0; while (n>0) { sum=0; for (int i=1; i<=n; i++) sum+=i; System.out.println("前"+n+"个数的总和为:"+sum); n--; } } }
for循环语句
for语句是最经常使用的循环语句,一般 用在循环次数已知的情况下。在很多情 况下,可以使用for语句替代while和dowhile语句。

for循环语句
for循环的语法格式为: for (表达式1; 表达式2; 表达式3) 循环体;
其中表达式1指出计数器的初值,是一个 赋值语句;表达式2指出循环结束条件, 是一个逻辑表达式;表达式3指出计数器 每次的增量,是一个赋值语句。
if语句
(2)if-else双分支结构语法形式 if(表达式) 语句1; Y else 语句2;
语义是:如果表达式的值 为真,则执行语句1,否 则执行语句2 。
语句1
表达式
N
语句2
例: if (x>y) System.out.print(x); else System.out.print(y);
if语句
(3)if多分支结构语法形式 if(表达式1)语句1; else if(表达式2)语句2; else if(表达式3)语句3; …… else if(表达式m)语句m; else 语句n;

表达式2
表达式1


表达式3


表达式m

语句1 语句2 语句3

语句n

语句m
if语句三种形式的说明:
(1)三种形式的if语句中在if关键字后面都有“表 达式”,一般为逻辑表达式或关系表达式,但也可 以是其它表达式,如赋值表达式等,甚至也可以是 一个变量。 例如:下面的if语句也是合法的:
满足条件? 是

满足条件?


步骤A
步骤B
步骤A
Java分支结构
——条件语句 if-else 一.If语句的三种基本形式 (1)If单分支结构语法形式 if(表达式) 语句;
语义是:如果表达式的值为真, 则执行其后的语句, 否则不执 行该语句。
表达式 真 语句 假
例: if(x>y) System.out.print(x);
例如上例: if(表达式1 ) { if(表达式2) 语句1;} else 语句2;
开始 输入a,b,c
例:任意给定3个正实 数,设计一个算法,判断分别 以这3个数为三边边长的三 角形是否存在。若存在求出 a+b>c,a+c>b,b+c>a 它的面积,否则显示“不存 是否同时成立? 在这样的三角形。画出这个 算法的程序框图。 (a、b、 c的值从键盘输入) 是 算法步骤如下: 求出 第一步,输入3个正实数a,b,c. 三角形面积 第二步,判断a+b>c,a+c>b, b+c>a是否同时成立. 第三步,若是,则求出它的面 积; 否则,显示“不存在这样的 结束 三角形”。
循环语句的嵌套
输出结果如图所示。
循环语句小结
一个循环一般应包括四部分内容:




1.初始化部分:用来设置循环的一些初始条件,计数 器清零等。 2.循环体部分:这是反复被执行的一段代码,可以是 单语句,也可以是复合语句。 3.迭代部分:这是在当前循环结束,下一次循环开始 时执行的语句,常用来使计数器加1或减1。 4.终止部分:通常是一个布尔表达式,每一次循环要 对该表达式求值,以验证是否满足循环终止条件。
While循环语句
do…while循环语句

do…while循环的语法格式为: do 循环体语句 {循环体} while (条件表达式); 真 表达式


其中do、while是关键字。程序首先执行do下 面的循环体,然后计算while后面条件表达式的 值,如果其值为true,则重复执行循环体,否 则,就结束循环。

循环语句


for循环语句 while循环语句 do…while循环语句
控制语句

跳转语句



break语句 带标号的break语句 continue语句 带标号的continue语句 return语句
控制语句

异常处理语句

try-catch-finally语句 throw语句
do…while循环语句


do…while循环与while循环相反,是先执 行循环体中的语句,再计算while后面的 条件表达式,若条件表达式值为false则 跳出循环,否则继续下一轮循环。 什么时候使用do…while循环呢?有些情 况下,不管条件表达式的值是为true还是 false,你都希望把指定的语句至少执行 一次,那么就应使用do…while循环。
理解一: 例如: if(表达式1) if(表达式1 ) if(表达式2) if(表达式2) 语句1; 语句1; else else 语句2; 语句2; 其中的else究竟是与哪一 个if配对呢? 理解二: if(表达式1 ) if(表达式2) 语句1; else 语句2;
if语句的嵌套
注意: if 语句与else 的配对关系。 配对原则: 2.避免if与else配对错位的最佳办法是加{}, 同时,为了便于阅读,使用适当的缩进。
if语句(续)
-1 (x<0) 例 有一个函数 y= 0 (x=0),编一程序,输入一个x 值,输出y值。 1 (x>0)
程序1: If(x<0) Y=-1; Else If(x==0) y=0; Else y=1; 程序2: if(x>=0) if(x>0) y=1; else y=0; else y=-1;
(3)在if和else后面可以只含一个内嵌的操作语 句,也可以有多个操作语句,此时用花括号 “{ }”将几个语句括起来组成一个复合语句。
例如: if(a>b) {a++; b++;} else {a=0; b=10;}
if语句的嵌套
定义:在 if 语句中又包含一个或多个if 语句称为if 语 句的嵌套。
if(a=5) 语句; if(b) 语句; 只要表达式的值为非0,即为“真”。
(2)在if语句中,条件判断表达式必须用括号括起来, 在语句之后必须加分号。
例如:if (x>0) System.out.print(x); else System.out.print(-x) ;
if语句三种形式的说明:
条件结构

不存在这样 的三角形
if语句(续)
例2 输入三个数a,b,c,要求按由小到大的顺序输出。
a>b n a>c y y n
If a>b If a>c If b>c
将a和b对换 将a和c对换 将b和c对换
Hale Waihona Puke Baidu
y
b>c
a和b交换
a和c交换
c和b交换
if语句(续)
public class NumberSort { public static void main(String[] args) { int a=5,b=7,c=3,t; if(a>b) {t=a;a=b;b=t;} if(a>c) {t=a;a=c;c=t;} if(b>c) {t=b;b=c;c=t;} System.out.print("a="+a+"b="+b+"c="+c); } 实例: NumberSort.java }
第四章 Java程序结构
一. 二.
三.
四.
Java顺序程序设计 分支结构程序设计 循环结构程序设计 跳转语句
控制语句
通常语句在程序中都是按先后顺序执行的, 控制语句用于改变程序执行的顺序。 选择语句

if语句 if…else语句 if…else复合结构 switch开关语句
控制语句
Java顺序程序设计

在顺序结构程序中,各语句是按照位置的先后 次序,顺序执行的,且每个语句都会被执行到。 A B
顺序结构流程图
先执行A操作 再执行B操作
例题:课本P61 例4.1
JAVA分支结构程序设计
在一个算法中,经常会遇到一些条件的判断, 算法的流程根据条件是否成立有不同的流向.分支 结构就是处理这种过程的结构. 分类是算法中经常发生的事情,分支结构的 主要作用就是表示分类. 分支结构可用程序框图表示为下面两种形式.
相关文档
最新文档