第3章流程控制语句3.21

上传人:feng****ing 文档编号:67396271 上传时间:2022-03-31 格式:DOC 页数:29 大小:302.50KB
收藏 版权申诉 举报 下载
第3章流程控制语句3.21_第1页
第1页 / 共29页
第3章流程控制语句3.21_第2页
第2页 / 共29页
第3章流程控制语句3.21_第3页
第3页 / 共29页
资源描述:

《第3章流程控制语句3.21》由会员分享,可在线阅读,更多相关《第3章流程控制语句3.21(29页珍藏版)》请在装配图网上搜索。

1、第3章流程控制语句3.21Java 流程控制语句、昨日回顾二、今日展望? IF 条件语句? Switch 多条件分支语句? IF 语句的灵活应用? While 循环语句的使用? Dowhile 循环语句的使用? While 与 dowhile 语句的区别? For 循环语句使用【 foreach 】? 递归三、今日招式3.1、IF条件语句-true public class Testlf public static voidmain (Stri ngargs)int score=80;if (score90)System. out .println( 紫霞秘籍给你了 !); else if (

2、score=70&score90)System. out .println(紫霞秘籍给你了 !);if (score=70&score=90)System. out .println(表现还好,小师妹犒劳你了!); else System. out .println(去思过崖了 !);这个程序段出现的结果会打印【紫霞秘籍】【思过崖】【作业:】1. 输入赵本山的考试成绩,显示所获奖励 成绩=100分,爸爸给他买辆车成绩=90分,妈妈给他买MP4成绩在60至90分之间,妈妈给他买本参考书 成绩60分,什么都不买2. 张三为他的手机设定了自动拨号按1:拨爸爸的号按2:拨妈妈的号按3:拨爷爷的号按4:

3、拨奶奶的号编程实现此业务3输入两个操作数,并且输入运算符【+、-、*、 /、%】实现基本运算。4.老奶奶去买商品,如果商品价格小于50,那么 直接买了。如果是其它情况,看看目前是否打折, 如果是打折,老奶奶考虑买不买。但是打折也有 情况,当折扣小于等于7.5折的情况,那么老奶 奶就打算买了,如果折扣为其它情况,那么不买 了。如果价格大于100,那么直接不考虑买该商public classPers onvoid play2()System. out .println(他在 NBA打篮球);void play1(Stri ng n ame)System. out .println(name+打篮球

4、);play2();同一个类中,两个方法的相互访问。int add()return 2;public static voidmain( Stri ngargs) Pers on p= new Pers on();p.play1(姚明);int value=p.add();System. out .println(-value);1. 类里面只能有属性和方法,其中属性和方法 都是同级的。2. 如何调用类中的方法。【类名】变量名=new【类名】(); 变量名【.】方法名3. 在同一个类中,两个方法可以相互访问。4. 调用方法一定要注意参数的顺序、参数的类 型以及参数的个数。5. 如果有返回值,用r

5、eturn;如果没有返回值,方法名字前的关键字void3.2、Switch多条件分支语句iwikcb芳甸瞬旬】谓旬工谒旬n默认晡旬建蛾执灯柑序publicstaticvoidmai n( Stri ngargs) init mon th =4;if(mon th =1 | mon th =2 |mon th :=3) System.out .println(第季度!);else if(mo nth =4 | mon th =5 | month = 6) System.out .println(第一季度!); else if(month =7 | month =8 | mon th = 9) S

6、ystem.out .println(第二季度!); else System.out .println(第四季度!);switch(mo nth) case 1:System. out.pri ntl n(第季度r);break ;case 2:System.out.pri ntl n(第季度r);break ;case 3:System.out.pri ntl n(第季度!);breakcase 4:System. out .println(第一季度r);break ;case 5:System.out.pri ntl n(第一季度r);break ;case 6:System.out.pr

7、i ntl n(第一季度r);break ;case 7:System.out.pri ntl n(第二季度r);break ;case &System.out.pri ntl n(第二季度r);break ;case 9:System.out.pri ntl n(第二季度!);breakcase 10:System.out .println(第四季度r);break ;case 11:System.out.pri ntl n(第四季度r);break ;case 12:System.out.pri ntl n(第四季度r);break ;default :System.out.pri ntl

8、 n(无该季度!);break ;switch (mo nth) case 1:case 2:case 3:System. out .println( 度!);break ;case 4:case 5:case 6:System. out .println( 度!);break ;case 7:case &case 9:System. out .println( 度!);break ;case 10:case 11:case 12:System. out .println(第一季第二季第三季第四季度!);break ;defaultSystem. out .println(无该季度!);bre

9、ak ;结构:switch (mo nth) case 1:System. out .println(第一季度!);break ;default :System. out .println(无该季度!);break ;注意:1. switch 遇到 break 中断。2.Switch 能用于变量类型为 int 、 short byte 、char 、( 枚举 )3.Switch 只能处理等值的判断【作业】1. 输入两个数字和一个运算符,得到计算结果 switch 根据输入的月份显示相应的季度。1 2 3 一季度4 5 6 二季度2. 根据分数打印优秀、良好、及格、差。 【区间 段的话可以采用整

10、型相除,例如 98/10=9】3. 将加减乘除运算改为 switch 运算。3.3、 While 循环循环就是在满足一定条件情况下反复执行某一 个操作。 For、while(do)、do.while 。while ( 【条件 =true 】)/ 做业务处理while腭句JL 鼻件秘圧注意:1一定要保证条件表达式能有false的情况,否则 会造成死循环。2. while (i=10);也会造成死循环。3. 用赋值语句造成死循环boolea na= false ;while (a= true )System. out .println( 111);1. 计算1-100范围内数值的和2. 计算1-1

11、00内所有奇数的值3. 求 s=a+aa+aaa+aaaa+aaa的值,其中 a 是一 个数字。例如2+22+222+2222+22222此时共有5个数相加),几个数相加有键盘控制public static args)Scannervoidmain (Stri ngScanner(System.in );System. out .println( 数);5int coun t=s .n ext In t();目,用于循环的条件int i=0,sum=0;s= new请输入多少个/输入的数intnu m=5,temp=num;5+55+555+5555+55555while (icount) s

12、um+=temp;temp=temp*10+num;/ 前一个数*10+numSystem. out .println(sum);4. 打印出所有的水仙花数,所谓水仙花数 是指一个三位数,其各位数字立方和等于该数本 身。例如:153是一个水仙花数,因为153=1 的三次方+ 5的三次方+ 3的三次方。5. 一球从100米高度自由落下,每次落地后反 跳回原高度的一半;再落下,求它在 第10次落 地时,共经过多少米?第10次反弹多高?1005025public class JumpHigh public static void main (Stri ng args)int i=0;double h

13、igh=100;double sum=0;/第一次100 第二次200 第三次25011200 300 350while (i10)sum+=high*2; / 来回 high=high/2; II下次跳的高度 i+;System. out .print(sum-100);Eclipse 注释:单行注释:Ctrl+/Ctrl+/多行注释:CTRL+SHIFT+/CTRL+SHIFT+取消注释:取消注释:删除一行:Ctrl+D单行复制代码块:CTRL+ALT+/多行复制代码块:选中代码块, CTRL+ALT+/ 代码块移动:ALT+【向上箭头或者向下箭头】3.4、do.while(While 语

14、句 JJ false| 裁续执灯程序| dosum+=i;i+; while (i-*豪IS式鼻ZWF*For循环语法:for (表达式1; 表达式 2; 表达式 3)表达式1:用于初始化循环控制变量,只执行 次表达式2:用于判断循环条件表达式3:用于改变循环体变量的值For循环的执行步骤:1. 执行表达式12. 判断表达式2的值。如果条件为真,执行循 环体,如果为假,跳出循环3. 当表达式2条件满足,此时执行表达式 3.4再进行条件判断,执行表达式 2public static voidmain (Stri ngargs)/CTRL+Y用于恢复int sum=0;for (int i=0;i

15、v=100;i+=2)/ 输出所有偶数的和sum+=i;System. out .print(sum);注意:for循环中定义的变量不能再for循环 外面访问。【作业:求取出98的所有公约数。】void printGYS( int n umber) for (int i=1;i=number;i+)if (number%i=0) System. out .println(i);For循环中三个表达式都可有可无。建议第二个 表达式得有。int i=1;for (;i=number;) if (number%i=0)System. out .println(i);For循环中用break进行循环的

16、中断。嵌套循环:循环中套循环 打印九九乘法表?void prin tMul()for (int i=1;i=9;i+) for (int j=1;j=i;j+)System. out .print(i+* +j+ = +i*j+t);System. out .print(n);3.6、循环中断contin ue用于结束本次循环直接跳到循环体剩余的语句,进行下一次循环。continue语法格式:continue 标号;?不带标号的跳转void prin tSeve n()for (int i=1;i100;i+)if (i%7!=0)con ti nue;System. out .print(i

17、+t); ?带标号的跳转带标号的跳转不是跳过当前循环的一次循环,而 是跳到标号指定的循环语句的一次循环。 然后判 断标号指定的循环条件是否满足,以决定是否进 行下一次循环。void prin tMul1()outer:for (int i=1;i=9;i+)for (int j=1;ji)System. out .print( n); continue outer;System. out .print(i+* +j+ = +i*j+t);? BreakBreak 和 continue(没标号)区别在于: continue 只是中断本次循环,而break是完全终止当前循 环的整个循环。void

18、prin tBreak()int i=0,sum=0;while (true ) sum+=i+;sum=sum+j;if (i100) break ;? return适合于方法体中断。Return后面输出的值必须和方法体定义的返回 值一致。针对void返回直接用return;int div( int value1, int value2)if (value2=0)System. out .println(除数不能为0 !);return 0;System. out .println( 除法运算:);return value1/value2;void div( int valuel, int

19、value2)if (value2=0)System. out .println(除数不能为0 !);return ; /用于中断void方法System. out .println( 除法运算:);l3.7、递归程序调用自身的编程称为递归。可以这么说,在运行的时候方法自己调用自己。public class SumTest int getValue( int i)if (i100)int value=getValue(+i);System. out .println();returni+value;/1+2+3+.+100 else return 0;public static voidmai

20、 n( Str ingargs)SumTest test= new SumTest();int sum=test.getValue(0);System. out .print(sum);原理:在Java程序运行过程中,首先会分配方法区栈, 第一个进来的方法是 main方法,main方法再去 调用其他方法。其中执行的顺序应该是最后进来 的方法先执行,最后执行的方法应该是main方法。栈的特点是先进后出。FILO队列特点是先进先出。FIFO作业:1猴子吃桃问题:猴子第一天摘下若干个桃子, 当即吃了一半,还不瘾,又多吃了一个,第二天 早上又将剩下的桃子吃掉一半,又多吃了一个。 以后每天早上都吃了前一天剩下的一半零一个。 到第10天早上想再吃时,见只剩下一个桃子了。 求第一天共摘了多少。2将一个十进制转换为二进制3利用递归,做阶乘运算。例如8!=8*7*6*5*.*1【调试:必须掌握】I.Debug AS2快捷键F6:执行下一步F5:执行到方法体内F7:跳到下一个断点F8 :结束,跳到下一个断点

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!