Java 基础编程练习题.docx

上传人:b****0 文档编号:9958059 上传时间:2023-05-22 格式:DOCX 页数:21 大小:19.48KB
下载 相关 举报
Java 基础编程练习题.docx_第1页
第1页 / 共21页
Java 基础编程练习题.docx_第2页
第2页 / 共21页
Java 基础编程练习题.docx_第3页
第3页 / 共21页
Java 基础编程练习题.docx_第4页
第4页 / 共21页
Java 基础编程练习题.docx_第5页
第5页 / 共21页
Java 基础编程练习题.docx_第6页
第6页 / 共21页
Java 基础编程练习题.docx_第7页
第7页 / 共21页
Java 基础编程练习题.docx_第8页
第8页 / 共21页
Java 基础编程练习题.docx_第9页
第9页 / 共21页
Java 基础编程练习题.docx_第10页
第10页 / 共21页
Java 基础编程练习题.docx_第11页
第11页 / 共21页
Java 基础编程练习题.docx_第12页
第12页 / 共21页
Java 基础编程练习题.docx_第13页
第13页 / 共21页
Java 基础编程练习题.docx_第14页
第14页 / 共21页
Java 基础编程练习题.docx_第15页
第15页 / 共21页
Java 基础编程练习题.docx_第16页
第16页 / 共21页
Java 基础编程练习题.docx_第17页
第17页 / 共21页
Java 基础编程练习题.docx_第18页
第18页 / 共21页
Java 基础编程练习题.docx_第19页
第19页 / 共21页
Java 基础编程练习题.docx_第20页
第20页 / 共21页
亲,该文档总共21页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

Java 基础编程练习题.docx

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

Java 基础编程练习题.docx

Java基础编程练习题

Java基础编程练习题

1、编写程序实现对给定的4个整数从大到小的顺序排列。

packageHomeWork01;

importjava.util.Scanner;

 

publicclassHomeWork01{

  staticintnumber=4;    //输入4个数存放在数组中          

  staticint[]t1=newint[number];      

  publicstaticvoidmain(String[]args){

    HomeWork01jiejie=newHomeWork01();

    jiejie.shunxun();

  }

  voidshunxun(){

        System.out.println("请输入4个数:

");

        Scannerin_t1=newScanner(System.in);//循环输入数组

        for(inti=0;i

          t1[i]=in_t1.nextInt();}    

        for(inti=0;i

          intpos=i;

          for(intj=i+1;j

            if(t1[pos]>t1[j])

              pos=j;

          }

          if(pos!

=i){

            t1[i]=t1[i]+t1[pos];

            t1[pos]=t1[i]-t1[pos];

            t1[i]=t1[i]-t1[pos];

          }

        }

           

        for(inti=t1.length-1;i>=0;i--)

          System.out.print(t1[i]+"\t");

  }

}

 2、编写程序求一元二次方程的根。

packageHomeWork02;

importjava.util.Scanner;

publicclassHomeWork02

//△=b^2-4ac的值,若△小于0,一元二次方程无根.若△等于0,一元二次方程有两个相等的根.若△大于0,一元二次方程有两个不相等的实数根

  {

  publicstaticvoidmain(String[]args){

  Scannersc=newScanner(System.in);

  System.out.println("输入2次方的系数");

  inta=sc.nextInt();

  System.out.println("输入1次方的系数");

  intb=sc.nextInt();

  System.out.println("输入0次方的系数");

  intc=sc.nextInt();

  if((b*b-4*a*c)<0){   // 判断方程是否有解

    System.out.println("方程无解!

");

    return;

  }

  else{

    System.out.println("方程有解!

");

  }

  doublex1=(-b+Math.sqrt(b*b-4*a*c))/2*a;

  doublex2=(-b-Math.sqrt(b*b-4*a*c))/2*a;

  System.out.println("根分别是"+x1+"\t"+x2);

  }

}

 3、编写程序,输入一个字符,判断它是否为小写字母,如果是,将它转换成大

写字母,否则,不转换。

packageHomeWork03;

importjava.util.Scanner;

publicclassHomeWork03{

  publicstaticvoidmain(String[]args){

    //小写字母的ascll值为97-122

    //大写字母的ascll值为65-90

    System.out.println("请输入一个字母:

\n");

    Scannerinput=newScanner(System.in);

    charzimu=input.next().charAt(0);

     if(zimu>=97&&zimu<=122){      //判断是否是小写字母

       System.err.println("该字母是小写字母");

       zimu=(char)(zimu-32);    //如果是小写字母则将其转换成大写字母

       System.err.println("转换之后的大写字母是:

"+zimu);

     }

     else{

       System.out.println("该字母不是小写字母!

");      

     }

  }  

}

 4、输入3个正数,判断能否构成一个三角形。

packageHomeWork04;

importjava.util.Scanner;

 

publicclassHomeWork04{

  publicstaticvoidmain(String[]args){

  inta;

  intb;

  intc;

  System.out.println("请输入三个正整数:

");

  Scannerin=newScanner(System.in);

  a=in.nextInt();

  b=in.nextInt();

  c=in.nextInt();

   

  if(a<=0||b<=0||c<=0)

  {

    System.out.println("输入的必须是正整数!

");

  }

  if((a+b)>c&&(a+c)>b&&(b+c)>a)

  {

    System.out.println("能构成三角形!

");

  }

  else{

    System.out.println("不能构成三角形!

");

  }

  }

  }

 

5、编写程序,对输入的年、月、日,给出该天是该年的第多少天?

packageHomeWork05;

importjava.util.Scanner;

publicclassHomeWork05{

publicstaticvoidmain(String[]args){

  Scannersc=newScanner(System.in);

  System.out.print("年");

  intyear=sc.nextInt();

  System.out.print("月");

  intmonth=sc.nextInt();

  System.out.print("日");

  intday=sc.nextInt();

  intdays=0;

  switch(month){

    case12:

days+=30;

    case11:

days+=31;

    case10:

days+=30;

    case9:

days+=31;

    case8:

days+=31;

    case7:

days+=30;

    case6:

days+=31;

    case5:

days+=30;

    case4:

days+=31;

    case3:

      if((year%4==0&&year%100!

=0)||(year%400==0)){

        days+=29;

        }

      else{

        days+=28;

        }

    case2:

days+=31;

    case1:

days+=day;

  }

    System.out.print("第"+days+"天");

}

}

 6、编写程序,从键盘输入一个0~99999之间的任意数,判断输入的数是几位

数?

packageHomeWork06;

importjava.util.Scanner;

publicclassHomeWork06{

publicstaticvoidmain(String[]args){

   

  Scannersc=newScanner(System.in);

  System.out.print("请输入一个0~99999之间的任意数");

  intnumber=sc.nextInt();

  if(number/10000>=1&&number/10000<10){

    System.out.println(number+"\t是5位数");

  }

  elseif(number/1000>=1){

    System.out.println(number+"\t是4位数");

  }

  elseif(number/100>=1){

    System.out.println(number+"\t是3位数");

  }

  elseif(number/10>=1){

    System.out.println(number+"\t是2位数");

  }

  elseif(number/1>=1){

    System.out.println(number+"\t是1位数");

  }

  }

}

 7、编写程序,给定一个学生成绩,给出相应等级:

90~100优秀

80~89良好

70~79中等

60~69及格

0~59不及格

packageHomeWork07;

importjava.util.Scanner;

publicclassHomeWork07{

 

  publicstaticvoidmain(String[]args){

    HomeWork07jiejie=newHomeWork07();

    jiejie.chengjie();

 

  }

  voidchengjie(){

    Scannersc=newScanner(System.in);

    System.out.println("请输入学生成绩:

");

    inta=sc.nextInt();

    if(a>=90&&a<=100){

      System.out.println("该学生的成绩是"+a+"\t成绩优秀");

    }

    elseif(a>=80&&a<90){

      System.out.println("该学生的成绩是"+a+"\t成绩良好");

    }

    elseif(a>=70&&a<80){

      System.out.println("该学生的成绩是"+a+"\t成绩中等");

    }

    elseif(a>=60&&a<70){

      System.out.println("该学生的成绩是"+a+"\t成绩及格");

    }

    else{

      System.out.println("该学生的成绩是"+a+"\t成绩不及格");

    }

  }

 

}

 8、编写程序,对输入的一个整数,按相反顺序输出该数。

例如,输入为3578,

输出为8753。

packageHomeWork08;

importjava.util.Scanner;

 

publicclassHomeWork08{

 

  publicstaticvoidmain(String[]args){

    Scannersc=newScanner(System.in);

    System.out.println("请输入一个整数:

");

    intread=sc.nextInt();

    //方法一   reverse()API

    System.out.println("方法一:

");

    StringBuildersb = newStringBuilder(String.valueOf(read));

    System.out.println(sb.reverse());

    //方法二  将字符串转换成字符数组,反序输出

    Stringstr=read+"";

    charfuzu[]=str.toCharArray();

    Stringtemp="";

    for(inta=fuzu.length-1;a>=0;a--){

      temp=temp+fuzu[a];

    }

    System.out.println("方法二:

");

    System.out.println(temp);

     

}

}

 9、用while循环,计算1~200之间所有3的倍数之和。

packageHomeWork09;

 

publicclassHomeWork09{

 

  publicstaticvoidmain(String[]args){

    //用while循环,计算1~200之间所有3的倍数之和。

    inta=1;

    intsum=0;

    while(a<=200){

      if(a%3==0){

        sum=sum+a;

      }

      a++;

    }

    System.out.println("1~200之间所有3的倍数之和为:

"+sum);

  }

}

 

10、编写程序,输出200~500之间的所有素数。

packageHomeWork10;

publicclassHomeWork10{

  publicstaticvoidmain(String[]args){

    intnum=200;

    while(num<=500){

      booleantag=true;    //素数标记

      for(intd=2;d<=num-1;d++){

        if(num%d==0){

          tag=false;

          break;

        }

      }

      if(tag){        //如果是素数

        System.out.println(num);

      }

      num++;

    }

  }

}

 

11、编写程序解决“百钱买百鸡”问题。

公鸡五钱一只,母鸡三钱一只,小鸡

一钱三只,现有百钱欲买百鸡,共有多少种买法?

packageHomeWork11;

publicclassHomeWork11{

  publicstaticvoidmain(String[]args){

    /*、编写程序解决“百钱买百鸡”问题。

     *公鸡五钱一只,母鸡三钱一只,

     *小鸡一钱三只,

     *现有百钱欲买百鸡,共有多少种买法?

*/

    for(intg=0;g<=20;g++){

      for(intm=0;m<=33;m++){

        for(intx=0;x<=100-g-m;x++){

          if(x%3==0&&5*g+m*3+x/3==100&&g+m+x==100){

            System.out.println("公鸡"+g+"只母鸡"+m+"只小鸡"+x+"只");

          }

        }

      }

    }

  }

}

 

12、使用循环语句输出下面的图形。

#

###

#####

#######

#########

packageHomeWork12;

publicclassHomeWork12{

  publicstaticvoidmain(String[]args){

    intaa=-1;

    for(inta=0;a<5;a++){

      aa+=2;

      for(intb=1;b<=aa;b++){ 

        System.out.print("#" );

      }

      System.out.println();}

     

  }

}

 13、验证“鬼谷猜想”:

对任意自然数,若是奇数,就对它乘以3再加1;若是

偶数,就对它除以2,这样得到一个新数,再按上述计算规则进行计算,一直进

行下去,最终必然得到1。

packageHomeWork13;

importjava.util.Random;;

publicclassHomeWork13{

  publicstaticvoidmain(String[]args){

    /*

     *验证“鬼谷猜想”:

对任意自然数,若是奇数,

     *就对它乘以3再加1;若是偶数,就对它除以2,

     *这样得到一个新数,

     *再按上述计算规则进行计算,

     *一直进行下去,最终必然得到1。

*/

    intnum;

    Randomrd=newRandom();

    //Integer.MAX_VALUE为最大的整数

    num=1+rd.nextInt(Integer.MAX_VALUE);//产生数的范围-2[31]----2[31]-1

    //System.err.println(rd.nextInt(100));//产生数>=0且<100

    System.out.println("原本的数为"+num);

    while(num!

=1){

      System.out.println("产生的新数是"+num);

      if(num%2==0){

        //偶数

        num=num/2;

      }

      else{

        num=num*3+1;

      }

    }

    System.out.println(num);

  }

}

 

14、编程求1~10000之间的所有“完全数”,完全数是该数的所有因子之和等于该数的数。

例如,6的因子有1、2、3,且6=1+2+3,所以6是完全数。

packageHomeWork14;

 

publicclassHomeWork14{

  publicstaticbooleanisyinzi(intnum){

    intsum=0;

    //判断一个整数是不是一个完全数

    for(intd=num-1;d>=1;d--){

      if(num%d==0){

        sum+=d;

      }

    }

    returnsum==num;

  }

 

  publicstaticvoidmain(String[]args){

    //TODOAuto-generatedmethodstub

    /*

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

当前位置:首页 > 经管营销 > 经济市场

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

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