您好,欢迎访问三七文档
当前位置:首页 > 医学/心理学 > 药学 > 第07讲__循环嵌套
第七讲循环嵌套教学目标巩固三种循环语句及应用;初步掌握二层循环嵌套的应用;回顾:三种控制结构顺序结构Java最基本的结构选择结构三种类型:if、if/else和switch循环结构三种类型:for、while和do/while程序控制流程流程控制语句是用来控制程序中各语句执行顺序的语句,是程序中非常关键和基本的部分。流程控制语句可以把单个语句组合成有意义的,能完成一定功能的小逻辑模块,能否熟练地运行流程控制语句往往很大程度上影响程序的质量。最主要的流程控制方式是结构化程序设计中的三种基本结构。循环语句——while语句while(布尔表达式){语句序列;}布尔表达式语句序列truefalse当型循环while语句循环体最少执行次数为0次do-while语句do{语句序列}while(布尔表达式);布尔表达式语句序列truefalse直到型循环do-while语句循环体最少执行1次for语句for循环语句在几种循环语句中的格式与用法最灵活,它的一般格式为:for([表达式1];[表达式2];[表达式3]){循环体}计算表达式1表达式2循环体计算表达式3truefalsebreak控制语句break语句的功能是终止执行包含break语句的一个程序块。break语句除了可应用于前面介绍的switch语句中外,还可应用于各种循环语句中。break语句的格式如下:break[标号];continue语句continue语句只能用在循环中,它的功能是使得程序跳过循环体中continue语句后剩下的部分(即短路),终止当前这一轮循环的执行。continue语句的格式如下:continue[标号];几点说明:1)、有人说:没有循环结构等于没有计算机;2)、for语句中表达式1可以是设置循环变量初值的赋值表达式,也可以是其他与循环无关的表达式,如:for(sum=0,i=1;i=10;i++,j--)sum=sum+i;3)、循环控制语句中的表达式一般是关系表达式(如i=10)或逻辑表达式(如sb&&xy);回顾:用0.1mm厚纸对折,问对折多少次后,其厚度超过地球直径(12742公里)?0.1mm的纸对折37次后,厚度是13743.895347200001公里,超过地球直径!publicclasswhiledemo3{publicstaticvoidmain(String[]args){intn=1;//n—对折次数,doublehigh=2e-4;//high—存放对折后的厚度while(high=12742000)//数字的单位要统一{n=n+1;high=high*2;}high=high/1000;System.out.println(0.1mm的纸对折+n+次后,厚度是+high+公里,超过地球直径!);}}例1:要求输出乘法表,形式如下:1234567891123456789224681012141618336912151821242744812162024283236551015202530354045661218243036424854771421283542495663881624324048566472991827364554637281publicstaticvoidmain(String[]args){for(inti=1;i10;i++)System.out.print(+i);System.out.println();for(inti=1;i10;i++){System.out.print(i+);for(intj=1;j10;j++)if(i*j=10)//结果是1位还是2位,输出空格数不同System.out.print(i*j+);elseSystem.out.print(i*j+);System.out.println();}}例1:输出乘法表chenfa.java//什么是素数?只有1和这个数本身能整除它;//判断方法1:如果从2到N/2都不能整除N,则N是素数;//要求输出不大于200的素数(完整程序见prime1.java)publicstaticvoidmain(String[]args){loop:for(inti=2;i200;i++){for(intj=2;j=i/2;j++)if(i%j==0)continueloop;System.out.printf(%4d,i);}}//只打印素数例2:素数的判断与输出//判断方法2:设K是N开平方后取整得到的整数;//若从2到K都不能整除N,则N是素数;//要求输出不大于200的素数(完整程序见prime2.java)intn=0;outer:for(inti=2;i200;i++){intk=(int)Math.sqrt(i);for(intj=2;j=k;j++){if(i%j==0)continueouter;}System.out.print(+i);}//只打印素数例3:素数的判断与输出编程练习:1.编程输出所有的水仙花数。水仙花数是指一个三位数,它的各位数的立方和等于该数,如153=1*1*1+5*5*5+3*3*3,所以153是水仙花数;2.编程输出九九乘法结果表,但是只要左下角的部分,输出要求如:12436948121651015202561218243036714212835424981624324048566491827364554637281思考与讨论:对于循环控制语句for([表达式1];[表达式2];[表达式3]),语法允许三个表达式是可以省略的,问:1)、当表达式1省略时,会有何变化?如何处理?2)、当表达式2省略时,循环流程会如何处理?3)、当表达式3省略时,会有何变化?如何处理能正常结束。4)、当表达式1、表达式3同时省略时,如果理解?5)、for语句中的三个表达式都省略,如:for(;;),如果理解?以上五个小问题,在讨论后请给出程序例子加以验证;
本文标题:第07讲__循环嵌套
链接地址:https://www.777doc.com/doc-3270020 .html