资源预览内容
第1页 / 共27页
第2页 / 共27页
第3页 / 共27页
第4页 / 共27页
第5页 / 共27页
第6页 / 共27页
第7页 / 共27页
第8页 / 共27页
第9页 / 共27页
第10页 / 共27页
亲,该文档总共27页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
第六章 循环结构,学习目标: while语句 for循环结构 do循环 break和continue关键字使用,循环,循环语句的作用是反复执行同一块代码直到满足结束条件。 在现实世界的许多问题中需要用到循环控制。例如:累加求和。,while 循环,语法形式为: while (布尔表达式) 语句块; 执行过程: 1、先计算布尔表达式 2、若为真则执行语句块,并转回再计算布尔表达式 3、若为假 则跳出循环,执行后面的语句。 小心:一定不要在while(布尔表达式)后面加;,while 循环的流程图,true,false,例:用while语句求1+2+10的和。,public class WhileTry public static void main(String args) int i; int sum=0; /累加器清0 i=1; /i的初始值为1 while (i=10) sum+=i; i+; System.out.println(“sum=“+sum); ,查看结果:WhileTry.java,要打印一个如下所示的矩形 内部循环打印列,外部循环打印行 “行慢列快”,嵌套while循环,查看结果:NestedWhileLoop.java,按照预先定义好的次数循环执行一组语句 等同于while循环,但有更集中的结构,for循环,语法形式为: for (表达式1;表达式2;表达式3) 语句块; ,for循环的流程图,每个for语句都有一个用于决定循环开始和结束的变量,通常称这个变量为循环控制变量。 表达式1用来给循环控制变量赋初值,它只在循环开始的时候执行一次。 表达式2是一个布尔表达式,用来决定何时终止循环。 表达式3用于改变循环控制变量的值。,for循环示例,例如,要使循环执行某一段代码1000次,可以表达为: for (int i=0; i= 1; i- ) for ( int i = 7; i = 77; i += 7 ),i是循环控制变量,可将while(布尔表达式) 语句块 改写为:for (;布尔表达式;) 语句块,例:用for语句求1+2+10的和,public class ForTry public static void main(String args) int i,sum; sum=0; / 累加器清0 for(i=1;i=10;i+) sum+=i; System.out.println(“sum=“+sum); ,用for循环完成要打印一个如下所示的矩形 ,嵌套for循环,进一步:如何实现对打印的行和列的值可随意控制和修改?,嵌套for循环,查看结果:NestedForLoop.java,语法形式 do 语句块; while(布尔表达式); 执行过程: 先执行一次循环体中的语句,然后测试布尔表达式的值。如果布尔表达式的值为真,那就返回执行循环体中的内容。do-while 语句将不断地测试布尔表达式的值并执行循环体中的内容直到布尔表达式的值为假为止。 注意: while(布尔表达式)后面必须有;,do 循环,do-while 循环的流程图,true,false,查看结果:FindAThree.java,While可以无限次地重复执行语句,并且执行语句的次数可以是0次或多次 Do可以无限次地重复执行语句,并且执行语句的次数可以是1次或多次 For可以按照预先定义好的次数循环执行语句,比较多种循环结构,查看结果:TestDo.java,break 语句,break用在switch中,作为各个分支的出口。 break用在while、for和do循环,可终止循环。在嵌套循环中,一个break语句只向外跳出一层。 break用在if语句中,满足条件时便跳出。,查看结果:BreakLoop.java和 BreakLoop2.java,while(true) 与for (;) 均是无限循环,需要break语句跳出循环,continue 语句,continue语句只能用在while、for和do循环,用来终止当前这一轮的循环,重新判断循环条件,决定是否重新开始下一轮的循环。而不是终止整个循环的执行。,public class ContinueTest public static void main(String args) for(int i=0;i10;i+) System.out.print(i+“ “); if(i%2)=0) continue; System.out.println(); ,查看结果:ContinueTest.java,查看结果:Multiples.java,练习,请指出下面各个程序片段存在的错误 1) int i=0; while(i10); i+; System.out.println(i+”; ”); ,此处的;,2) for(double x=0.1;x!=1.0;x+=0.1) System.out.println(x+”; ”);,!应当慎重对浮点数作等于或不等于判断,(15.2%0.5)=0.2 /结果为false,而不是true,3)int i=0,sum; while(i=100) sum+=i; i+;,错误1:sum使用前未初始化 错误2:少 ,造成无限循环,
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号