java程序设计基础第四章_Java语言程序设计_基础篇_中文ppt_第四章.ppt

Java语言程序设计_基础篇_中文ppt_第四章

Liang, Introduction to Java Programming, Eighth Edition, (c) 2011 Pearson Education, Inc. All rights reserved. 0132130807 第4章 循 环 引言 假设你需要打印一个字符串 (例如: “Welcome to Java!”)100次。这就需要把下面的输出语句重复100遍,过程是相当繁琐: System.out.println("Welcome to Java!"); 所以,该如何解决这个问题? 开放问题 问题: 介绍while循环 学习目标 while 循环流程图 跟踪while循环 跟踪while循环(续) 跟踪 while 循环(续) 跟踪 while 循环(续) 跟踪while循环(续) 跟踪 while 循环(续) 跟踪while循环(续) 跟踪 while 循环(续) 跟踪 while 循环 问题:猜数字 编写一个程序,随机生成一个在0到100之间,包括0和100的整数。程序提示用户连续输入一个数字,直到它和计算机随机生成的数字相匹配为止。对用户每次输入的数字,这个程序要告诉用户该输入太大了还是太小了,所以这样用户就可以明智地进行下一轮的猜测。下面是一个示例运行: 问题:高级数学学习工具 每次运行数学减法学习工具程序只能产生一道题目。你可以使用一个循环重复产生题目。这个示例程序产生了五个问题,在学生回答完所有的五个问题之后报告回答正确的题数。 使用标志值结束循环 通常执行循环的次数是不能预先确定的。你可以使用一个输入值来表示循环的结束。这样的值被称为标志值。 编写一个程序来读取和计算不指定个数的整数之和。输入0表示输入结束。 注意 在循环控制中,不要使用浮点值来比较值是否相等。 因为浮点值是某些值的近似值,所以使用它们可能导致不精确的循环次数和不准确的结果。 考虑下面计算1 + 0.9 + 0.8 +…+ 0.1的代码: double item = 1; double sum = 0; while (item != 0) { // No guarantee item will be 0 sum += item; item -= 0.1; } System.out.println(sum); 变量item从1开始,每次执行循环体就减少0.1。当item变为0时循环应该终止。但是,因为浮点运算结果是近似的,所以无法保item会变成真正的0。从表面上看,这个循环似乎没有问题,但它实际上是一个无限循环。 do-while循环 for循环 for (initial-action; loop-continuation-condition; action-after-each-iteration) { // loop body; Statement(s); } 跟踪for循环 跟踪for循环(续) 跟踪for循环(续) 跟踪for循环(续) 跟踪for循环(续) 跟踪for循环(续) 跟踪for循环(续) 跟踪for循环(续) 跟踪for循环(续) 跟踪for循环(续) 注意 注意 注意 在for子句末尾循环体之前添加分号是一个常见的错误,如下所示: 注意(续) 同样,下面的循环也是错误的: int i=0; while (i < 10); { System.out.println("i is " + i); i++; } 在do循环的环境下,循环结束的分号是必需要的。 int i=0; do { System.out.println("i is " + i); i++; } while (i<10); 采用哪种循环? 建 议 嵌套循环 问题:编写一个程序使用嵌套for循环打印一个乘法表。 最小化数值误差 涉及浮点数的数值误差是不可避免的。本节通过一个实例讨论如何最小化这样的误差。 下面是一个例子,计算从0.01开始到1.0结束的数列之和。该数列的数值以0.01递增,如下所示:0.01 + 0.02 + 0.03...依此类推。 问题:求最大公约数 问题:预测未来学费 问题:预测未来学费 问题:蒙特卡罗模拟 使用break和continue 回顾猜数字问题 这是一个猜数字的程序。你可以使用break语句改写它。 问题:显示素数 (GUI)使用确认对话框控制循环 使用IDE工具调试循环 int i; for (i = 0; i < 2; i++) { System.out.println("Welcome to Java!"); } 退出循环。 循环之后执行这条语句 动 画 for循环中的初始动作可以是零个或多个以逗号隔开的语句列表。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值