java基础练习题及答案修订稿.docx

  1. 1、本文档共16页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
集团档案编码:[YTTR-YTPT28-YTNTL98-UYTYNN08] 集团档案编码:[YTTR-YTPT28-YTNTL98-UYTYNN08] java基础练习题及答案 【程序1】 题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一 对兔子,假如兔子都不死,问每个月的兔子总数为多少? 刚开始真的无从下手,这么难的,怎么可以说是基础呢,感觉这些应该是逻辑分析很强的,第一个月只有一对兔子,第二个月还是只有一对兔子,第三个月,就有两对了,第四个月3对,第五个月5对,第六个月8对,第七个月是13对。。。。。。规律出来了,你们发了没? [java] publicclassExample1{ publicstaticvoidmain(Stringargs[]){ //i是表示月份的,这里计算了36个月,也就是三年,兔子的数量 inti; longarr[]=newlong[36]; //这个数组时用来计算每月有兔子的对数 arr[0]=arr[1]=1; 第1个月有兔子1对+, +总数是+2); 第2个月有兔子1对+, +总数是+2); for(i=2;i=35;i++){ arr[i]=arr[i-1]+arr[i-2]; 第+i+个月有兔子+arr[i]+对+, +总数是+2*arr[i]); //规律是每个数字都是前面两个数字之和 } } } OK,用时45分钟。 【程序2】 题目:判断101-200之间有多少个素数,并输出所有素数。 素数又叫质数,就是除了1和它本身之外,再也没有整数能被它整除的数。也就是素数只有两个因子。 [java] publicclassExample2{ publicstaticvoidmain(Stringargs[]){ inti,j,n,m,x;//n是用来存储余数的;m是用来统计具体一个数的因子; n=0;m=0;x=0; //x是用来统计101~200之前素数的个数 for(i=101;i=200;i++){ //两重循环 for(j=1;j=i;j++){ n=i%j;//去余数,如果余数为零,就是该数的因子 if(n==0){m=m+1;}//统计某数有多少个因子 } if(m==2 ); x=x+1;} //如果某数的因子只有两个,那它就一定是素数,那这个数就应该输出 m=0; //一定要清零,不然会继续累加 } 在101~200之间一共有素数:+x+个); } } 我好笨啊,这题我做了两个钟头,最终还是解决了。加油 【程序3】 题目:打印出所有的水仙花数,所谓水仙花数是指一个三位数,其各位数字立方和等于该数本身。例如: 153是一个水仙花数,因为153=1的三次方+5的三次方+3的三次方。想当年,做这些题都是网上找答案,如今事过境迁,不会也得会。 [java] publicclassExample3{ publicstaticvoidmain(Stringargs[]){ inta,sum;//表示100~999 inti,j,k;//分别表示百位、十位、各位 for(a=100;a=999;a++){ i=a/100; j=(a-i*100)/10; k=a-i*100-j*10; sum=i*i*i+j*j*j+k*k*k; //java的运算符,立方要这样写,写成i^3这样,竟然运算不出来 //如果遇到高次的话可以使用循环算出来 if(sum==a) } } 还是有学到点东西,应该还有别的方法。那我就试试吧。 [java] publicclassExample4{ publicstaticvoidmain(Stringargs[]){ intsum; inti,j,k;//分别表示百位、十位、各位 for(i=1;i=9;i++){ for(j=0;j=9;j++){ for(k=0;k=9;k++){ sum=i*i*i+j*j*j+k*k*k; if(i*100+j*10+k==sum){ } } } } } } 【程序4】 题目:将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。 (1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。 (2)如果nk,但n能被k整除,则应打印出k的值,并用n除以k的商,作为新的正整数你n,重复执行第一步。 (3)如果n不能被k整除,则用k+1作为k的值,重复执行第一步。 [java] importjava.util.*; publicclassExample4{ publicstaticvoidmain(String[]args){ i

文档评论(0)

tikelong05 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档