JAVA编程练习题.docx

上传人:b****6 文档编号:15405408 上传时间:2023-07-04 格式:DOCX 页数:6 大小:16.32KB
下载 相关 举报
JAVA编程练习题.docx_第1页
第1页 / 共6页
JAVA编程练习题.docx_第2页
第2页 / 共6页
JAVA编程练习题.docx_第3页
第3页 / 共6页
JAVA编程练习题.docx_第4页
第4页 / 共6页
JAVA编程练习题.docx_第5页
第5页 / 共6页
JAVA编程练习题.docx_第6页
第6页 / 共6页
亲,该文档总共6页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

JAVA编程练习题.docx

《JAVA编程练习题.docx》由会员分享,可在线阅读,更多相关《JAVA编程练习题.docx(6页珍藏版)》请在冰点文库上搜索。

JAVA编程练习题.docx

JAVA编程练习题

【程序1】   

题目:

古典问题:

有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?

   

//这是一个菲波拉契数列问题

publicclasslianxi01{

publicstaticvoidmain(String[]args){

System.out.println("第1个月的兔子对数:

   1");

System.out.println("第2个月的兔子对数:

   1");

intf1=1,f2=1,f,M=24;

    for(inti=3;i<=M;i++){

     f=f2;

     f2=f1+f2;

     f1=f;

     System.out.println("第"+i+"个月的兔子对数:

"+f2);

        }

}

}

【程序2】   

题目:

判断101-200之间有多少个素数,并输出所有素数。

程序分析:

判断素数的方法:

用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。

   

publicclasslianxi02{

publicstaticvoidmain(String[]args){

   intcount=0;

   for(inti=101;i<200;i+=2){//101~200之间的素数

    booleanb=false;

    for(intj=2;j<=Math.sqrt(i);j++)

    {

       if(i%j==0){b=false;break;}

        else          {b=true;}

    }

       if(b==true){count++;System.out.println(i);}

                                 }

   System.out.println("素数个数是:

"+count);

}

}

【程序3】   

题目:

打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。

例如:

153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。

publicclasslianxi03{

publicstaticvoidmain(String[]args){

    intb1,b2,b3;

    for(intm=101;m<1000;m++){

     b3=m/100;

     b2=m%100/10;

     b1=m%   10;

     if((b3*b3*b3+b2*b2*b2+b1*b1*b1)==m){

     System.out.println(m+"是一个水仙花数");}

    }

}

}   

【程序6】   

题目:

输入两个正整数m和n,求其最大公约数和最小公倍数。

   

/**在循环中,只要除数不等于0,用较大数除以较小的数,将小的一个数作为下一轮循环的大数,取得的余数作为下一轮循环的较小的数,如此循环直到较小的数的值为0,返回较大的数,此数即为最大公约数,最小公倍数为两数之积除以最大公约数。

*/

importjava.util.*;

public   class    lianxi06    {

publicstaticvoidmain(String[]args){

int    a,b,m;

Scanners=newScanner(System.in);

System.out.print("键入一个整数:

");

a=s.nextInt();

System.out.print("再键入一个整数:

");

b=s.nextInt();

     deffcd=newdeff();

     m=cd.deff(a,b);

     intn=a*b/m;

     System.out.println("最大公约数:

"+m);

     System.out.println("最小公倍数:

"+n);

}

}

classdeff{

publicintdeff(intx,inty){

    intt;

    if(x

     t=x;

     x=y;

     y=t;

    }  

    while(y!

=0){

     if(x==y)returnx;

     else{

      intk=x%y;

      x=y;

      y=k;

     }

    }

    returnx;

}

}

【程序9】   

题目:

一个数如果恰好等于它的因子之和,这个数就称为"完数"。

例如6=1+2+3.编程    找出1000以内的所有完数。

   

publicclasslianxi09{

publicstaticvoidmain(String[]args){

    System.out.println("1到1000的完数有:

");

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

     intt=0;

     for(intj=1;j<=i/2;j++){

      if(i%j==0){

       t=t+j;

      }

     }

     if(t==i){

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

     }

    }

}

【程序10】   

题目:

一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在    第10次落地时,共经过多少米?

第10次反弹多高?

publicclasslianxi10{

publicstaticvoidmain(String[]args){

     doubleh=100,s=100;

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

     s=s+h;

     h=h/2;

    }

    System.out.println("经过路程:

"+s);

    System.out.println("反弹高度:

"+h/2);

}

}

【程序15】   

题目:

输入三个整数x,y,z,请把这三个数由小到大输出。

   

importjava.util.*;

publicclasslianxi15{

publicstaticvoidmain(String[]args){

    inputfnc=newinput();

    intx=0,y=0,z=0;

    System.out.print("输入第一个数字:

");

     x=fnc.input();

    System.out.print("输入第二个数字:

");

     y=fnc.input();

    System.out.print("输入第三个数字:

");

     z=fnc.input();   

   if(x>y){

     intt=x;

     x=y;

     y=t;

    }

   if(x>z){

     intt=x;

     x=z;

     z=t;

    }

   if(y>z){

     intt=y;

     y=z;

     z=t;

    }

   System.out.println("三个数字由小到大排列为:

"+x+""+y+""+z);

}

}

classinput{

publicintinput(){

    intvalue=0;

    Scanners=newScanner(System.in);

    value=s.nextInt();

    returnvalue;

}

}

【程序16】

题目:

输出9*9口诀。

     

publicclasslianxi16{

publicstaticvoidmain(String[]args){

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

     for(intj=1;j<=i;j++){

      System.out.print(j+"*"+i+"="+j*i+"   ");

        if(j*i<10){System.out.print("");}

}

         System.out.println();

    }

}

}

【程序17】   

题目:

猴子吃桃问题:

猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个    第二天早上又将剩下的桃子吃掉一半,又多吃了一个。

以后每天早上都吃了前一天剩下    的一半零一个。

到第10天早上想再吃时,见只剩下一个桃子了。

求第一天共摘了多少。

   

publicclasslianxi17{

publicstaticvoidmain(String[]args){

    intx=1;

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

     x=(x+1)*2;

    }

    System.out.println("猴子第一天摘了"+x+"个桃子");

}

}

【程序21】   

题目:

求1+2!

+3!

+...+20!

的和   

publicclasslianxi21{

publicstaticvoidmain(String[]args){

   longsum=0;

   longfac=1;

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

    fac=fac*i;

    sum+=fac;

   }

   System.out.println(sum);

}

}

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > IT计算机 > 电脑基础知识

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2