第2章基本语法(第2部分)_第1页
第2章基本语法(第2部分)_第2页
第2章基本语法(第2部分)_第3页
第2章基本语法(第2部分)_第4页
第2章基本语法(第2部分)_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第2章 Java程序设计基础2.6 程序控制语句程序控制语句 理解程序控制的概念理解程序控制的概念 运用条件语句控制程序的执行运用条件语句控制程序的执行 运用循环语句控制语句的重复运用循环语句控制语句的重复 理解并使用关键字理解并使用关键字breakbreak和和continuecontinue程序基本流程程序基本流程 顺序结构顺序结构 选择结构选择结构 循环结构循环结构流程控制语句 条件语句 if语句、ifelse语句 switch语句 循环语句 while循环 dowhile循环 for循环 跳转语句 break 和 continue条件语句条件语句if if语句语句switchswitc

2、h语句语句if语句 简单简单if if语句只在条件为真时执行。语句只在条件为真时执行。其语法如下:其语法如下:if (if (布尔表达式布尔表达式) ) 语句语句( (组组); ); If语句 例如:if (i = 0) & (i = 10) System.out.println(“i 介于0和10之间); IfTest.javaif-else语句语句 if ( if (布尔表达式布尔表达式) ) 布尔表达式为真时执行的语句(组);布尔表达式为真时执行的语句(组); else else 布尔表达式为假时执行的语句(组);布尔表达式为假时执行的语句(组); if-else语句语句if (

3、a k)if (jk)System.out.println(“i 和 j 比 k 大”);elseSystem.out.println(“i 比 k 小”);嵌套的嵌套的if语句语句 多重选择多重选择if if语句的书写风格:语句的书写风格:if if(条件条件1 1)语句语句1 1 else if else if (条件条件2 2)语句语句2 2 else if else if (条件条件3 3)语句语句3 3. else else 语句语句; ; 这个风格可以避免深层缩进并使程序容易阅读。这个风格可以避免深层缩进并使程序容易阅读。 IfElseTest.java IfElseTest.ja

4、vaswitch语句Java提供switch语句来有效的处理多重条件。switch (表达式)case 值1: 语句组1;break;case 值2: 语句组2;break;case 值N: 语句组N;break;defalut:缺省语句组;switch语句switchswitch语句应遵从下述规则:语句应遵从下述规则: 表达式表达式switch-expressionswitch-expression的结果类型只能为的结果类型只能为charchar、bytebyte、shortshort或或intint型值。型值。 value1valueN value1valueN 必须与必须与switch-

5、expressionswitch-expression的值具的值具有相同的数据类型。当有相同的数据类型。当switch-expressionswitch-expression的值与的值与casecase语句的值相匹配时,执行该语句的值相匹配时,执行该casecase语句中的语句。语句中的语句。(每个(每个casecase语句都顺序进行)语句都顺序进行) 关键字关键字breakbreak是可选的。是可选的。breakbreak语句终止整个语句终止整个switchswitch语语句。若句。若breakbreak语句不存在,下一个语句不存在,下一个casecase语句将被执行。语句将被执行。 默认情

6、况(默认情况(defaultdefault)是可选的,它用来执行指定情)是可选的,它用来执行指定情况都不为真时的操作。默认情况总是出现在况都不为真时的操作。默认情况总是出现在switchswitch语语句块的最后。句块的最后。switch语句Java提供switch语句来有效的处理多重条件。例如:SwitchTest.javaSwitchTest2.java注意表达式结果类型:byte,short,int或者charcase匹配 成功只确定程序流程的入口,结束还得依靠break练习 编写一个应用程序,读取用户任意输入的3个非零整数,判断它们是否可以作为直角三角形的3条边。如果可以,则打印这个三

7、角形的面积。 循环语句 while循环 do循环 for循环 关键字break 和 continuewhile 循环 while循环的语法如下:while (循环条件) / 循环体;while循环流程图 false true Statement(s) Next Statement Continue condition? Continue condition? while 循环l练习1:用while循环,求1-100的和 练习2: 使用while循环编写程序求正整数n,要求1到n的和最接近10000;源程序:WhileTest.javado循环 do循环是while循环的变体。do / Loop

8、 body; while (循环条件);(注意最后的分号!)do循环流程图falsetrueStatement(s)NextStatement Continue condition?do while do while 循环循环 练习: 使用do while循环求1-100的和 练习编写程序输出1-20之间的偶数源程序:DoWhileTest.javafor 循环 for循环的语法如下:for (循环变量初始化;循环条件;调整语句) /循环体;for循环流程图 Evaluate Control-variable Expression expression false true Adjustmen

9、t expression Statement(s) (loop-body) Next Statement Continue condition? forfor循环循环 使用使用forfor循环循环求求1-1001-100的所有整数的和的所有整数的和源程序:源程序:ForTest.javaForTest.java 练习:计算从练习:计算从0.010.01到到1.01.0的数列之的数列之和,数列以和,数列以0.010.01递增。递增。练习练习 编写一个应用程序,计算整数编写一个应用程序,计算整数1010的的阶乘,并将结果输出到屏幕上。阶乘,并将结果输出到屏幕上。 编写一个应用程序,计算编写一个应用

10、程序,计算1 11010之之间的各个整数的阶乘,并将结果输间的各个整数的阶乘,并将结果输出到屏幕上。出到屏幕上。 编写程序求出所有的水仙花数。水编写程序求出所有的水仙花数。水仙花数是指个位、十位和百位的立仙花数是指个位、十位和百位的立方和等于这个数本身的数方和等于这个数本身的数for循环如果循环条件省略,就意味着条件为真。如果循环条件省略,就意味着条件为真。 下述语句也是正确的下述语句也是正确的 for(;) for(;) break和continue关键字 语句break和语句continue,可以用在循环语句中为循环提供附加控制。break:这个关键字立刻终止包含它的最内层循环。conti

11、nue:这个关键字只结束当前迭代,将程序控制转移到循环的下一次迭代。break关键字 false true Statement(s) Next Statement Continue condition? Statement(s) break continue关键字 false true Statement(s) Next Statement Continue condition? Statement(s) continue 使用break和continue关键字F计算计算1-10001-1000中能被中能被3 3整除的数的和,整除的数的和,如果和大于如果和大于50005000,不再计算,并输出

12、,不再计算,并输出这个和这个和F例例 :源程序:源程序ContinueAndBreakTest.javaContinueAndBreakTest.java练习 计算从计算从1 1开始的奇数的和,条件是当开始的奇数的和,条件是当这些奇数的和超过这些奇数的和超过100100时就停止打印,时就停止打印,循环条件为循环条件为truetrue。(用。(用breakbreak语句)语句) 计算从计算从1 1到到1010的偶数之和,但循环递的偶数之和,但循环递增部分每次只能递增增部分每次只能递增1 1,(用,(用continuecontinue语句)语句)语句标号lJava中的标号只用来标识语句和完成循环中

13、的标号只用来标识语句和完成循环等语句结构的调出,不能完成类似于等语句结构的调出,不能完成类似于goto语句的调转。语句的调转。 l标号常用于标号常用于break和和continue语句。语句。lJava不支持不支持goto结构。结构。带语句标号的带语句标号的break语句语句outer: for(int i=1;i10;i+)inner: for(int j=1;j50)break outer;break outer;System.out.println(iSystem.out.println(i* *j);j);带标号的带标号的continue语句语句first: for(int i=1;i=9;i+) System.out.print(i+:); second: for(int j=1;j=4) continue first;System.out

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论