- 1、本文档共28页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
JAVA第4章-循环结构
第4章 循环结构 本章学习重点 while、do-while以及for语句 。 跳转语句break和continue 。 分支及循环结构的嵌套编程 。 较复杂程序的执行流程分析 。 4.1 循环结构 在进行程序设计时,经常会碰到一些计算并不很复杂,但却要重复进行相同的处理操作的问题。比如: (1)计算累加和1+2+3+…+100。 (2)计算阶乘,如10!。 (3)计算一笔钱在银行存了若干年后,连本带息有多少? 问题(1),用一条语句:sum = 1+2+3+…+100 来求解,则赋值表达式太长, 改成多条赋值语句:sum +=1; sum +=2; sum +=3; …; sum +=100;也不行,即便加到100那也有100条语句,程序过于臃肿,不利编辑、存储和运行。 Java语言引入三种语句:while、do-while以及for来解决这类问题。我们把这类问题的结构称为循环结构,把这三种实现语句称为循环语句。 这三种循环语句的流程图如下所示: while语句 while语句的一般语法格式如下: while(条件表达式) { 循环体;} while是关键字,首先计算条件表达式的值,若为true则执行循环体,然后再计算条件表达式的值,只要是true就循环执行,直到布尔值为false才结束退出while结构。 循环体可以是复合语句、简单语句甚至是空语句, 一般情况下,循环体中应包含有能修改条件表达式取值的语句,否则就容易出现“死循环”(程序毫无意义地无限循环下去)。 例如:while(1);这里,循环体为一空语句,而条件表达式为一常量1(Java语言里,0代表false,非0为true),因此这是一死循环。 假如现在想算出在1万个阶梯内,都有哪些阶梯数满足题意的话,可以这样改写程序中的while结构: do-while语句 do-while语句的语法格式如下: for语句 for语句的一般语法格式如下: 4.2 循环嵌套 当循环体语句又是循环语句时,就构成了循环嵌套,即多重循环,循环嵌套可以是两重的、三重的甚至更多重(较复杂的算法)。 4.3 跳转语句 break continue return 1. break break语句的作用是使程序的流程从一个语句块的内部跳转出来,如前述的switch结构以及循环结构。break语句的语法格式为: 2. continue continue语句只能用于循环结构,它也有两种使用形式:不带标号和带标号。 前者的功能是提前结束本次循环,即跳过当前循环体的其他后续语句,提前进入下一轮循环体继续执行。对于while和do-while循环,不带标号的continue语句会使流程直接跳转到条件表达式,而对于for循环,则跳转至表达式3,修改控制变量后再进行条件表达式2的判断。 带标号continue语句多用在多重循环结构中,标号的位置与break语句的标号位置相类似,一般需放至整个循环结构的前面,用来标识这个循环结构,一旦内层循环执行了带标号continue语句,程序流程则跳转到标号处的最外层循环,具体是:while和do-while循环,跳转到条件表达式,for循环,跳转至表达式3。 提示: 跳转语句break及continue的使用,使得程序流程设计变得更灵活,但同时也给编程者增加了分析负担,建议应少用,慎用。 学会分析程序的执行流程是掌握程序设计的关键,也是基础,建议初学者应读透本章的例子,为后面的进一步学习打下一个良好的开端。 作业 2 6 7 8 * * 【例4-1】利用while语句实现1到100的累加。 public static void main(String[] args) { int sum=0; //累加和变量sum int i=1; // 控制变量i while(i=100) { sum+=i; i++; } System.out.println(累加和为:+sum); } (1)存放累加和的变量初始值一般赋值为0。 (2)变量i既是累加数,同时又是控制变量(控制循环体的循环次数)。 (3)循环体语句sum+=i; i++; 可以合并简写为:sum+=i++; 但对于初学者而言,不建议这么写。 (4)while循环体语句多于一条,因而必须以复合语句形式出现,千万别漏了大括号。 【例4-2】利用while语句求10的阶乘。 public
文档评论(0)