Java语言编程基础-程序流程控制结构_第1页
Java语言编程基础-程序流程控制结构_第2页
Java语言编程基础-程序流程控制结构_第3页
Java语言编程基础-程序流程控制结构_第4页
Java语言编程基础-程序流程控制结构_第5页
已阅读5页,还剩53页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Java程序设计基础导言本课程学习目标认识程序流程控制结构的分类了解流程控制语句中的关键字使用理解选择结构与循环结构流程实现原理掌握流程控制结构的相关语法及使用程序结构的基本类型本课学习目标了解语句和块;理解程序结构的基本类型;掌握分支结构的流程控制。基本概念计算机程序是由一系列的语句组成的;构成程序的所有语句对应实际问题的具体处理过程解决问题的详细步骤称为算法;换句话说,解决问题过程中需要执行的操作及执行操作的顺序就是算法结构化程序设计,有以下三大类型:顺序结构、分支结构、循环结构顺序结构

语句1语句2语句3分支结构

分支语句分支语句条件循环结构

循环语句判断条件顺序结构顺序结构是最简单的控制结构,即语句按照在程序中的书写顺序依次执行;在顺序结构的程序中,由一条条代码语句组成。语句语句是程序最基本最重要的组成部分,是组成程序的基本单位,具有如下特点及分类:1.语句以分号结束;2.声明语句;3.表达式语句;4.分支语句;5.循环语句;6.异常语句;7.空语句;块程序中比语句大一个级别的单位就是块;是用一对大括号{}将零个或多个语句括起来,就构成一个块(也叫复合语句);程序的类的类体及方法的方法体都是块。块的应用publicclassUseBlock{publicstaticvoidmain(String[]args){ inta=5; a+=8; { intb=6; b=b+a; System.out.println(a+""+b); }}}分支结构分支结构又称为选择结构,它根据计算表达式所得的值来判断程序应该选择流程的哪一个分支执行;分支语句包括:if语句if….else语句switch语句。if语句if表达式的格式如下:if(条件表达式){

语句代码}如果表达式的值为true,则执行代码块里面语句;如果表达式的值为false,则跳过代码块里面语句。if语句流程图表示

开始接收年龄ageifage==20输出该人年龄结束truefalseif语句应用publicstaticvoidmain(String[]args){ intage=20; if(age==20){ System.out.println("他的年龄:20"); } System.out.println("***TestOver***"); }if…else语句if…else表达式的格式如下:if(条件表达式){

语句代码1}else{

语句代码2}如果表达式的值为true,则执行语句代码1;如果表达式的值为false,则执行语句代码2。if…else语句流程图

开始接收年龄ageifage>=18输出:成年结束truefalse(else)输出:未成年if…else语句应用publicstaticvoidmain(String[]args){ intage=10; if(age>=18){ System.out.println("你已经成年了"); } else{ System.out.println("你还末成年"); }

System.out.println("***TestOver***"); }分支嵌套语句在条件分支语句当中套条件分支语句:if…elseif…elseif…else如:if(表达式1){语句1}elseif(表达式2){语句2}……elseif(表达式n){语句n}else{否则语句}分支嵌套语句流程图

开始If分数>=80结束是If80>分数>=70输出:优If70>分数>=60输出:不及格输出:中输出:良否是是否否分支嵌套语句应用publicstaticvoidmain(String[]args){ StringstrNum=args[0]; intscore=Integer.parseInt(strNum);

if(score>=80){ System.out.println("你的成绩是:优"); } elseif(score>=70){ System.out.println("你的成绩是:良"); } elseif(score>=60){ System.out.println("你的成绩是:中"); } else{ System.out.println("你的成绩是:不及格"); }

System.out.println("\n***TestOver***"); }if…else语句要点1.条件表达式可以是:关系表达式、布尔表达式、逻辑表达式结果值必须是布尔值;2.如果分支中有多条语句必须用{}括起来;3.每条语句后面必须有分号。switch语句多条件选择语句,与if…else语句类似,但判断表达式的值不同,格式:switch(类型值){case判断值1:语句块1;break;case判断值2:语句块1;break;case判断值3:语句块1;break;...case判断值n:语句块1;break;default:否则语句块}switch语句类型值必须为32位以下的基本数据类型,可以是:byte、short、int、char每一选择语句的结束,一般须以break;结尾。switch语句应用publicstaticvoidmain(String[]args){ charc='C'; switch(c){ case'A':System.out.println("优秀");break; case'B':System.out.println("良好");break; case'C':System.out.println("中等");break; case'D':System.out.println("合格");break; case'E':System.out.println("不合格");break; default:System.out.println("输入错误"); } }循环结构-反复执行的语句程序举例:在控制台打印1~1000之间的自然数。在上面的程序中,打印的动作被反复执行;逐句写输出语句:冗长,繁琐,在很多时候是不可行的。解决这种问题,要使用循环语句。循环结构循环结构既不同于顺序结构,又不同于if…else语句;循环分有三大种类;whiledo…whilefor循环结构循环结构一般包含有以下四个部分;循环的初始化循环条件循环体循环变量用while语句进行循环while语句的格式:while(<循环条件>){//当循环条件为true时,执行这个块里的语句

…………}//如果循环条件为false,执行这里的语句用while语句进行循环利用while语句改写开始的程序:1。申明循环变量并赋初值;2。判断循环条件;3。条件为true则执行循环体,修改循环变量值4。当条件不为true时,退出循环。输出1000以内的自然数publicstaticvoidmain(String[]args){

//循环变量初始值 inti=1; while(i<=1000){

//输出自然数i及每个自然数后面加一个tab键 System.out.print(i+"\t");

//每输出十个数换另一行输出 if((i%10)==0){ System.out.println(); }

//循环变量递增 i++; }}while循环应用在控制台上用循环输出(1-1000)之间的偶数。实现代码publicstaticvoidmain(String[]args){ //循环变量初始值

inti=1; while(i<=1000){

//判断是否为偶数,为偶数时则输出此偶数

if(i%2==0){ //输出偶数i及每个偶数后面加一个tab键

System.out.print(i+"\t");

//每输出十个偶数换另一行输出

if((i%20)==0){ System.out.println(); } }

//循环变量递增

i++; }}用do…while语句执行循环格式:do{//循环体语句}while(<循环条件>)用do…while语句执行循环while语句是先判断条件,再执行循环体;do…while语句是先执行循环体,再判断条件。这说明,do…while循环体中的语句至少要被执行一次(而while循环体语句可能不被执行);除此之外,其他与while语句相同。输出1000以内能被10整除的数publicstaticvoidmain(String[]args){ //循环变量初始值

inti=1; do{ //判断是否能被10整除,能整除时则输出此数

if(i%10==0){ //输出能被10整除的数i及每个数后面加一个tab键

System.out.print(i+"\t");

//每输出十个数换另一行输出

if((i%100)==0){ System.out.println(); } }

//循环变量递增

i++; }while(i<=1000);}do…while与while的区别以下两段代码执行结果会有什么差别?publicstaticvoidmain(String[]args){ inti=15; do{ System.out.println("******do…while*******"); i++; }while(i<10); System.out.println("*******over*******");}publicstaticvoidmain(String[]args){ inti=15; while(i<10){ System.out.println("******while*******"); i++; } System.out.println("*******over*******");}do…while循环应用在控制台上用循环do…while从大到小输出100以内的自然数代码实现publicstaticvoidmain(String[]args){ //循环变量初始值为100 inti=100; do{

//输出偶数i及每个数后面加一个tab键

System.out.print(i+"\t");

//每输出十个数换另一行输出

if((i%10)==1){ System.out.println(); }

//循环变量递减

i--; }while(0<i&&i<=100);}for语句循环for语句是循环语句中功能最强、使用最广泛的语句,它的用法也比较灵活。用for语句实现循环for语句格式:for(<表达式1>;<表达式2>;<表达式3>){//当<表达式2>为真(true)时执行这里

…………}表达式1只在循环开始时执行一次,一般用来申明和给循环变量赋初值;表达式2的值为boolean型,是循环条件;表达式3在循环体中语句执行完后再执行,一般用来修改循环变量表达式之间用分号(;)隔开。for语句流程图最简单的for循环,输出10以内的自然数publicstaticvoidmain(String[]args){ for(inti=1;i<=10;i++){ System.out.println(i); }

System.out.println("for语句结束");}执行循环体求表达式2的值求解表达式1求解表达式3for语句之后的语句用for语句实现循环publicstaticvoidmain(String[]args){ intsum=0; for(inti=1;i<=10;i++){

//等价于sum=sum+i; sum+=i; } System.out.println("sum="+sum);}for循环应用用for语句实现10以内所有偶数相加,并输出最终结果。代码实现publicstaticvoidmain(String[]args){ intsum=0; for(inti=1;i<=10;i++){

//判断是否为偶数,若为偶数则相加

if(i%2==0){ //等价于sum=sum+i; sum+=i; } } System.out.println("sum="+sum);}嵌套循环在循环中套循环,也称为多重循环;外面的循环称为外层循环循环体以内的循环称为内层循环最简单的嵌套循环用双层循环输出一个直角三角形publicstaticvoidmain(String[]args){

//第一层循环控制行数

for(inti=1;i<=10;i++){

//第二层循环控制列数

for(intj=1;j<=i;j++){ System.out.print("*"); }

System.out.println(); }}嵌套循环应用用双层循环输出一个倒直角三角形实现代码publicstaticvoidmain(String[]args){

//第一层循环控制行数

for(inti=10;i>=1;i--){

//第二层循环控制列数

for(intj=i;j>=1;j--){ System.out.print("*"); }

System.out.println(); }}转跳语句Java语言支持以下三种转跳语句break语句,跳出循环continue语句,结束本次循环,执行下一个循环。return语句,跳出方法break语句应用publicstaticvoidmain(String[]args){ inti=1; while(i<=1000){ System.out.print(i+"\t"); if(i==10){ break;//执行该语句时,跳出循环 }

i++; }

System.out.println("*****循环结束****");}continue语句应用publicstaticvoidmain(String[]args){ inti=0; while(i<1000){ i++; if(i==10){ continue;//执行该语句时,跳出第10次循环

} System.out.print(i+"\t"); }

System.out.println("\n*****循环结束****");}return语句应用publicstaticvoidmain(String[]args){ System.out.println("*******1*******"); showData(); System.out.println("*******2*******");

}publicstaticvoidshowData(){ System.out.println("****showData1*****");

if(true){ return;//执行此语句跳出方法

}

System.out.println("****showData2*****");}小结1.程序结构的基本类型;2.分支结构的流程控制;if语句、if…

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论