50道java基础编程练习题全面解答

50道java基础编程练习题全面解答

ID:33585457

大小:821.52 KB

页数:35页

时间:2019-02-27

50道java基础编程练习题全面解答_第1页
50道java基础编程练习题全面解答_第2页
50道java基础编程练习题全面解答_第3页
50道java基础编程练习题全面解答_第4页
50道java基础编程练习题全面解答_第5页
资源描述:

《50道java基础编程练习题全面解答》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、50道JAVA基础编程练习题解答【程序1】题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?.程序分析:兔子的规律为数列1,1,2,3,5,8,13,21....解答:(方法一)利用数学分析可得知:这个月的兔子数量为前两个月的兔子数量之和,推导过程如下:X1,X2,X3Y1,Y2,Y3Z1,Z2,Z3X1:表示一个月大的兔子;X2表示两个月大的兔子;X3表示三个月及三月以上的兔子。有以下数学表达式:Y1=X2+X3,Y2=

2、X1,Y3=X2+X3Z1=Y2+Y3,Z2=Y1,Z3=Y2+Y3Z1+Z2+Z3=Y2+Y3+Y1+(Y2+Y3)=(Y2+Y3+Y1)+(X2+X3+X1)因此上面每个月的兔子的数量满足斐波那契数列。编程实现较为简单,此处省略。(方法二)方法二利用编程实现,具有一般性(开始兔子个数和产仔周期可自行输入),程序设计如下:importjava.util.*;importjava.io.*;classTuZi{intnianling=1;}publicclassText1{publicstaticvoidmain(St

3、ring[]args)throwsIOException{//TODOAuto-generatedmethodstubintshuliang=1;intzhouqi=4;intyuefen=0;Vectorrongqi=newVector();System.out.print("输入兔子开始数量:");BufferedReaderstdin=newBufferedReader(newInputStreamReader(System.in));shuliang=(newInteger(stdin.

4、readLine()));System.out.print("输入兔子生产周期:");zhouqi=(newInteger(stdin.readLine()));System.out.print("输入查询月份:");yuefen=(newInteger(stdin.readLine()));for(inti=1;i<=shuliang;i++){rongqi.addElement(newTuZi());}for(inti=2;i<=yuefen;i++){for(intj=0;j

5、{TuZia=(TuZi)rongqi.elementAt(j);a.nianling++;}for(intj=0;j=zhouqi){rongqi.addElement(newTuZi());}}}System.out.print("兔子数量为:"+rongqi.size());}}【程序2】题目:判断101-200之间有多少个素数,并输出所有素数。1.程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数

6、),如果能被整除,则表明此数不是素数,反之是素数。解答:程序如下:publicclassText2{publicstaticvoidmain(String[]args){//TODOAuto-generatedmethodstubintsum=0;System.out.print("101到200的素数是:");for(inti=101;i<=200;i++){intflag=0;for(intj=2;j<=Math.sqrt(i);j++){floatk=(float)i;if(k%j==0){flag=1;brea

7、k;}}if(flag==0){System.out.print(i+"");sum++;}}System.out.println("");System.out.print("素数个数为:");System.out.print(sum);}}【程序3】题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。1.程序分析:利用for循环控制100-999个数,每个数分解出个位,十位,百位。解答:程序如下:

8、publicclassText3{publicstaticvoidmain(String[]args){inta=0;intb=0;intc=0;System.out.println("100到999的水仙花数为:");for(inti=100;i<=999;i++){a=i/100;b=i/10-a*10;c=i-b*10-a*

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。