欢迎来到163文库! | 帮助中心 精品课件PPT、教案、教学设计、试题试卷、教学素材分享与下载!
163文库
全部分类
  • 办公、行业>
  • 幼教>
  • 小学>
  • 初中>
  • 高中>
  • 中职>
  • 大学>
  • 各类题库>
  • ImageVerifierCode 换一换
    首页 163文库 > 资源分类 > DOC文档下载
    分享到微信 分享到微博 分享到QQ空间

    Java程序设计资料:单元04 循环结构.doc

    • 文档编号:2047619       资源大小:7.69MB        全文页数:12页
    • 资源格式: DOC        下载积分:8文币     交易提醒:下载本文档,8文币将自动转入上传用户(罗嗣辉)的账号。
    微信登录下载
    快捷注册下载 游客一键下载
    账号登录下载
    二维码
    微信扫一扫登录
    下载资源需要8文币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    优惠套餐(点此详情)
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、试题类文档,标题没说有答案的,则无答案。带答案试题资料的主观题可能无答案。PPT文档的音视频可能无法播放。请谨慎下单,否则不予退换。
    3、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者搜狗浏览器、谷歌浏览器下载即可。。

    Java程序设计资料:单元04 循环结构.doc

    1、单元 04 循环结构单元目标 掌握 while 循环结构的使用方法; 掌握 do-while 循环结构的使用方法及区别; 掌握 for 循环结构的使用方法。学习任务1.任务描述猜数游戏:给出一个等式,比如 x * 4 = 20,其中 x 是未知数。编写一个程序实现求出 x 的数值,使它满足等式,并输出结果。要求:x 和乘数的取值范围都在 09,用for 循环和 while 循环分别实现。2.运行结果知识准备4.1 while 循环当事先不知道循环该执行多少次的时, 就要用到 while 循环。 while 循环的格式格式如下:while (判断条件)语句 1 ;语句 2 ;语句 n ;当 wh

    2、ile 循环主体有且只有一个语句时,可以将大括号除去。在 while 循环语句中,只有一个判断条件,它可以是任何表达式,当判断条件的值为真,循环就会执行一次,再重复测试判断条件、执行循环主体,直到判断条件的值为假,才会跳离 while 循环。猜数字游戏程序设计猜数字游戏程序设计下面列出了 while 循环执行的流程。1第一次进入 while 循环前,就必须先为循环控制变量(或表达式)赋起始值。2根据判断条件的内容决定是否要继续执行循环,如果条件判断值为真(True) ,继续执行循环主体;条件判断值为假(False) ,则跳出循环执行其他语句。3执行完循环主体内的语句后,重新为循环控制变量(或表

    3、达式)赋值(增加或减少) ,由于 while 循环不会自动更改循环控制变量(或表达式)的内容,所以在 while循环中为循环控制变量赋值的工作要由设计者自己来做, 完成后再回到步骤 2 重新判断是否继续执行循环。根据上述的程序流程,可以绘制出如图 5-2 所示的 while 循环流程图:图 1-26while 循环结构流程图【实例 1-9】使用 while 循环计算 1 累加至 10。 【源代码】public static void main(String args)int i = 1 ,sum = 0 ;while(i=10)sum += i ; / 累加计算i+ ;System.out.p

    4、rintln(1 + 2 + .+ 10 = +sum); / 输出结果程序运行结果为:1+2+10=55。猜数字游戏程序设计4.2 do-while 循环dowhile 循环也是用于未知循环执行次数的时候,而 while 循环及 do-while 循环最大不同就是进入 while 循环前,while 语句会先测试判断条件的真假,再决定是否执行循环主体,而 do-while 循环则是“先做再说”,每次都是先执行一次循环主体,然后再测试判断条件的真假,所以无论循环成立的条件是什么,使用 do-while 循环时,至少都会执行一次循环主体。do-while 循环的格式格式如下:do语句 1 ;语句

    5、 2 ;语句 n ;while (判断条件);当循环主体只有一个语句时,可以将左、右大括号去除。第一次进入 do-while 循环语句时,不管判断条件(它可以是任何表达式)是否符合执行循环的条件,都会直接执行循环主体。 循环主体执行完毕, 才开始测试判断条件的值, 如果判断条件的值为真,则再次执行循环主体, 如此重复测试判断条件、 执行循环主体, 直到判断条件的值为假,才会跳离 do-while 循环。下面列出了 do-while 循环执行的流程:1进入 do.while 循环前,要先为循环控制变量(或表达式)赋起始值。2直接执行循环主体,循环主体执行完毕,才开始根据判断条件的内容决定是否继续

    6、执行循环: 条件判断值为真 (true) 时, 继续执行循环主体; 条件判断值为假 (false)时,则跳出循环,执行其他语句。3执行完循环主体内的语句后,重新为循环控制变量(或表达式)赋值(增加或减少),由于 dowhile 循环和 while 循环一样,不会自动更改循环控制变量(或表达式)的内容,所以在 dowhile 循环中赋值循环控制变量的工作要由自己来做,再回到步骤 2 重新判断是否继续执行循环。根据上述的描述,可以绘制出如图 5-3 所示的 do-while 循环流程图:图 1-27 do-while 循环结构流程图【实例 1-10】 用 do-while 循环设计一个从 1 累加

    7、至 n 的程序 (n 为大于 0 的整数) 。【源代码】public static void main(String args)int i = 1 ,sum = 0 ;Scanner scanner=new Scanner(System.in);/接收键盘输入int n=scanner.nextInt(); /键盘输入的数值赋值给 n/ do-while 是先执行一次,再进行判断。即,循环体至少会被执行一次dosum += i ; / 累加计算i+ ;while(i=n);System.out.println(1 + 2 + .+ n+ = +sum); / 输出结果程序运行结果为:161+2

    8、+16=136。【注意】【注意】无论 do-while 循环结构中的循环条件是否成立, 都会执行一次循环操作。 这是与 while循环的最大区别。 无论 While 循环时先判断, 后执行, do-while 循环是先执行, 后判断。猜数字游戏程序设计4.3 for 循环语句当很明确地知道循环要执行的次数时,就可以使用 for 循环,其语句格式格式如下:for (赋值初值;判断条件;赋值增减量)语句 1 ;语句 n ;若是在循环主体中要处理的语句只有 1 个,可以将大括号去除。下面列出了 for 循环的流程。1第一次进入 for 循环时,为循环控制变量赋起始值。2根据判断条件的内容检查是否要继

    9、续执行循环,当判断条件值为真(true)时,继续执行循环主体内的语句;判断条件值为假(false)时,则会跳出循环,执行其他语句。3执行完循环主体内的语句后,循环控制变量会根据增减量的要求,更改循环控制变量的值,再回到步骤 2 重新判断是否继续执行循环。根据上述描述,可以绘制出如图 5-4 所示的 for 循环流程图:图 1-28 for 循环结构流程图【实例 1-11】利用 for 循环来完成由 1 至 10 的数的累加运算。【源代码】public static void main(String args)猜数字游戏程序设计int i , sum = 0 ;/for 循环的使用,用来计算数字

    10、累加之和for(i=1;i=10;i+)sum += i ; / 计算 sum = sum+iSystem.out.println(1 + 2 + . + 10 = +sum);程序运行结果为:1+2+10=55。4.4 break 和 continue 语句4.4.1 break 语句break 语句可以强迫程序跳离循环,当程序执行到 break 语句时,即会离开循环,继续执行循环外的下一个语句, 如果 break 语句出现在嵌套循环中的内层循环, 则break语句只会跳离当前层的循环。以 for 循环为例(如图 5-5 所示),在循环主体中有 break语句时,当程序执行到 break,即

    11、会离开循环主体,而继续执行循环外层的语句。图 1-29 for 循环中使用 break 语句示意图【实例 1-12】利用 for 循环输出循环变量 i 的值,当 i 除以 3 所取的余数为 0 时,即使用 break 语句的跳离循环,并于程序结束前输出循环变量 I 的最终值。【源代码】public static void main(String args)int i ;for(i=1;i=10;i+)if(i%3 = 0)break ; / 跳出整个循环体System.out.println(i = +i);猜数字游戏程序设计System.out.println(循环中断:i = +i);程序

    12、运行结果如下:i=1i=2循环中断:i=3当 i%3 为 0 时,符合 if 的条件判断,即执行 break 语句,跳离整个 for 循环。此例中,当 i 的值为 3 时,3%3 的余数为 0,符合 if 的条件判断,离开 for 循环,输出循环结束时循环控制变量 i 的值 3。4.4.2 continue 语句continue 语句可以强迫程序跳到循环的起始处,当程序运行到 continue 语句时,即会停止运行剩余的循环主体, 而是回到循环的开始处继续运行。 以图5-6所示的for 循环为例,在循环主体中有 continue 语句,当程序执行到 continue,即会回到循环的起点,继续执

    13、行循环主体的部分语句。图 1-30 for 循环中使用 continue 语句【实例 1-13】将例 1-12 中的 break 改为 continue,查看程序执行效果。【源代码】public static void main(String args)int i ;for(i=1;i=10;i+)if(i%3 = 0)continue ; / 跳出一次循环System.out.println(i = +i);猜数字游戏程序设计System.out.println(循环中断:i = +i);程序运行结果如下:i=1i=2i=4i=5i=7i=8i=10循环中断:i=11当判断条件成立时,bre

    14、ak 语句与 continue 语句会有不同的执行方式。Break 语句不管情况如何,先离开循环再说;而 continue 语句则不再执行此次循环的剩余语句,直接回到循环的起始处。任务实施1.实现思路(1)从命令行参数获取第二个乘数和乘法结果;(2)通过 for 循环遍历 09 之间的数,查找能使等式成立的数字,如果找到则用break 跳出循环,否则直到 for 循环执行完;(3) 输出是否查找到符合要求的数字,以及数字的具体值。2.程序代码(1)使用 for 循环语句实现的代码public static void main(String args) int num1=0;int num2 =

    15、 Integer.parseInt(args0);int result = Integer.parseInt(args1);int i;for(i =0;i10;i+)if(i * num2 = result)猜数字游戏程序设计num1 = i;break;if(i10)System.out.println(数字 + num1 +可以使下面的等式成立:);System.out.println(x * + num2 + = + result);elseSystem.out.println(没有符合要求的数字);(2)使用 while 循环语句实现的代码public static void mai

    16、n(String args) int num1=0;int num2 = Integer.parseInt(args0);int result = Integer.parseInt(args1);int i=0;while(i10)if(i * num2 = result)num1 = i;break;i+;if(i10) System.out.println(数字 + num1 +可以使下面的等式成立:);System.out.println(x * + num2 + = + result);elseSystem.out.println(没有符合要求的数字);任务拓展继续拓展猜数字构建等式游

    17、戏的程序设计,如果加大游戏难度,两个乘数都为未知数,例如:x * y = 200,通过循环找到所有符合等式的数字,并输出所有符合要求的等猜数字游戏程序设计式。要求:x 和 y 的取值范围是 10100。显然单重循环已经不能解决这个问题了,必须使用双重循环,双重 for 循环的格式为:for(;)/语句for(;)/语句/语句【实例 1-14】猜两个乘数的程序设计。【源代码】public static void main(String args) int result = Integer.parseInt(args0);int count =0;System.out.println(可以使的等式

    18、:x * y = + result +成立的有:);for(int num1 =10;num1100;num1+)/第一层循环for(int num2 = 10;num2 100; num2+)/第二层循环if(num1 * num2) = result) /能使等式成立System.out.println(num1 + * + num2 + = + result);count+;/记录符合要求的表达式的数目System.out.println(共有+ count + 个等式符合要求);参数输入 150,程序运行结果如下:可以使得等式:x*y=150 成立的有:10*15=15015*10=150共有两个等式符合要求猜数字游戏程序设计任务实训1.实训目的 熟练掌握上机步骤和程序开发的全过程; 掌握循环流程控制结构的 while 循环结构; 掌握循环流程控制结构的 do-while 循环结构; 掌握循环流程控制结构的 for 循环结构。2.实训内容仿照“任务五” ,实现任务:2006 年培养学员 8 万人,每年增长 25%,请问按此增长速度,到哪一年培训学员人数将达到 20 万人?猜数字游戏程序设计


    注意事项

    本文(Java程序设计资料:单元04 循环结构.doc)为本站会员(罗嗣辉)主动上传,其收益全归该用户,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!




    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库