java循环练习及答案_第1页
java循环练习及答案_第2页
java循环练习及答案_第3页
java循环练习及答案_第4页
java循环练习及答案_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

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

文档简介

-.z.循环练习1、实现一个课程名称和课程代号的转换器:输入下表中的课程代号,输出课程的名称。用户可以循环进行输入,如果输入n就退出系统。(使用do-while循环实现)课程名称和课程代号对照表 课程名称课程代码使用Java语言理解程序逻辑1使用HTML语言开发商业站点2使用SQLServer管理和查询数据3使用C*开发数据库应用程序4importjava.util.Scanner;publicclassA2{publicstaticvoidmain(String[]args){ Scannerscanner=newScanner(System.in); Stringke="";do{ System.out.println("请输入代码:"); ke=scanner.ne*t();if(ke.equals("1")){ System.out.println("使用Java语言理解程序逻辑"); }if(ke.equals("2")){ System.out.println("使用HTML语言开发商业站点"); }if(ke.equals("3")){ System.out.println("使用SQLServer管理和查询数据"); }if(ke.equals("4")){ System.out.println("使用C*开发数据库应用程序"); }if(ke.equals("n")){ System.out.println("出错!");break; } }while(true); }}2、本金10000元存入银行,年利率是千分之三。每过1年,将本金和利息相加作为新的本金。计算5年后,获得的本金是多少?(使用for循环实现)classA3{publicstaticvoidmain(String[]args){doublemon=10000;for(inti=0;i<5;i++){ mon*=1+0.003; } System.out.println("5年后,获得的本金是"+mon+"元"); }}3、求整数1~100的累加值,但要求跳过所有个位为3的数。(使用for循环实现)publicclassA4{publicstaticvoidmain(String[]args){inti=0,n=0;for(inta=0;a<10;a++){for(intb=0;b<=9;b++){if(b!=3){ i=a*10+b; n+=i; } } } n+=100; System.out.println(n);}}4、输入一个正整数N,判断该数是不是质数,如果是质数输出“N是一个质数”,否则输出“N不是质数”。提示:质数的含义:除了1和它本身不能被任何数整除。(使用for循环实现)importjava.util.Scanner;publicclassA5{publicstaticvoidmain(String[]args){intn,m=0; ScannerN=newScanner(System.in); System.out.println("请输入要判断的数字:");do{n=N.ne*tInt();for(inti=2;i<n;i++){if(n%i==0){ m=1; } }if(m==1){ System.out.println("N不是质数"); }else{ System.out.println("N是质数 "); }m=0; }while(true); }}5、输入一个正整数,将该数的各位左右反转输出,即输入123,输出321。(使用while循环实现)importjava.util.Scanner;publicclassA6{publicstaticvoidmain(String[]args){ Scannerinput=newScanner(System.in); System.out.print("请输入一个正整数:");intnum=input.ne*tInt();if(num>0){ System.out.println("反转前:"+num); System.out.print("反转后:");while(num!=0){inttemp=num%10; System.out.print(temp); num/=10; } }else{ System.out.println("您输入的不是一个正整数!");} } }6、在屏幕上打印出n行的金字塔图案,如,若n=5,则图案如下:

*

***

*****

******

*********publicclassA7{publicstaticvoidmain(String[]args){for(inti=1;i<=5;i++){for(intj=1;j<=5-i;j++){ System.out.print(""); }for(intk=1;k<=2*i-1;k++){ System.out.print("*"); } System.out.println(); } }}7、打印出100~999之间的所有“水仙花数”。所谓“水仙花数”,是指一个3位数,其各位数字立方和等于该数本身。例如:153是一个“水仙花数”,因为153=13+53+33。publicclassA8{publicstaticvoidmain(String[]args){inta,b,c;for(a=1;a<=9;a++){for(b=0;b<=9;b++){for(c=0;c<=9;c++){if((a*a*a+b*b*b+c*c*c)==(100*a+10*b+c)){ System.out.println((100*a+10*b+c)); } } }}}}8、幸运猜猜猜:游戏随机给出一个0~99(包括0和99)的数字,然后让你猜是什么数字。你可以随便猜一个数字,游戏会提示太大还是太小,从而缩小结果围。经过几次猜测与提示后,最终推出答案。在游戏过程中,记录你最终猜对时所需要的次数,游戏结束后公布结果。积分对照表次数结果1你太有才了!2~6这么快就猜出来了,很聪明么!大于7猜了半天才猜出来,小同志,尚需努力啊!猜测次数最多20次。提示:产生0~99之间的随机数字:intnumber=(int)(Math.random()*100)使用for循环结构,其中循环计数器counter同时也记录你猜测的次数计算积分可以使用switch结构importjava.util.Scanner;publicclassA9{publicstaticvoidmain(String[]args){ints=0;intnumber=(int)(Math.random()*100);Scannerscanner=newScanner(System.in);System.out.println("请输入一个0~99(包括0和99)的数字:");do{inti=scanner.ne*tInt(); s++;if(i==number){if(s==1){ System.out.println("您太有才了!"); System.out.println("这次游戏,您共用了"+s+"次,就猜对了!");break; }if(s<=6&&s>=2){ System.out.println("这么快就猜出来了,您真聪明!"); System.out.println("这次游戏,您共用了"+s+"次,就猜对了!");break; }if(s>=7){ System.out.println("恭喜您,猜对了!"); System.out.println("这次游戏,您共用了"+s+"次,就猜对了!");break; }break; }else{if(i>number){ System.out.println("对不起,您猜大了!"); }if(i<number){ System.out.println("对不起,您猜小了!"); } } }while(s<20); System.out.println("欢迎您下次再玩儿!");}}9、将一个数组中的元素倒排过来,不能新开一个数组的临时存储空间,只能在原数组上改publicclassBubbleSortDEmo{ publicstaticvoidmain(String[]args){ int[]sum={1,2,3,4,5,6,7,8,9}; inttemp; intlen=sum.length; for(inti=0;i<len/2;i++){ temp=sum[i]; sum[i]=sum[sum.length-1-i]; sum[sum.length-1-i]=temp; } System.out.println("排序后:"); for(inti=0;i<sum.length;i++){ System.out.println(sum[i]); } }}10、输入3个整数*,y,z把三个数从小到大输出importjava.util.Scanner;publicclassNumSort{publicstaticvoidmain(String[]args){ int*,y,z; Scannerscanner=newScanner(System.in); System.out.println("请输入*变量的值:"); *=scanner.ne*tInt(); System.out.println("请输入y变量的值:"); y=scanner.ne*tInt(); System.out.println("请输入z变量的值:"); z=scanner.ne*tInt(); inttemp; if(*>y){ temp=*; *=y; y=temp; }}}11、输入2组数据分别是年月日求他们相差多少天?importjava.util.Scanner;publicclassClacYearDay{publicstaticvoidmain(String[]args){ int[]date_one=newint[3]; int[]date_two=newint[3]; Scannerscanner=newScanner(System.in); System.out.println("请输入年:"); date_one[0]=scanner.ne*tInt(); System.out.println("请输入月:"); date_one[1]=scanner.ne*tInt(); System.out.println("请输入日:"); date_one[2]=scanner.ne*tInt(); System.out.println("请输入年:"); date_two[0]=scanner.ne*tInt(); System.out.println("请输入月:"); date_two[1]=scanner.ne*tInt(); System.out.println("请输入日:"); date_two[2]=scanner.ne*tInt(); intafter=ClacDay(date_one[0],date_one[1],date_one[2]); intbefore=ClacDay(date_two[0],date_two[1],date_two[2]); if(after>before){ System.out.println("两个日期之间相差:"+(after-before)+"天"); } else{ System.out.println("两个日期之间相差:"+(before-after)+"天"); }}/****paramyear年*parammonth月*paramday日*return*/ publicstaticintClacDay(intyear,intmonth,intday){ inttotal=0; intinit; int[]monthday={31,28,31,30,31,30,31,31,30,31,30,31}; for(init=1;init<year;in

温馨提示

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

评论

0/150

提交评论