zoukankan      html  css  js  c++  java
  • 2018年4月5日清明节作业整理

    1.编写一个Java应用程序,该应用程序包括2个类:Print类和主类E。Print

    类里有一个方法output()功能是输出100 ~ 999之间的所有水仙花数(各位数字的

    立方和等于这个三位数本身,如: 371 = 33 + 73 + 13。)在主类E的main方法中来

    测试类Print。

    package liu0917;

    public class Print

    {

        void output()

        {

            for(int i =100;i<=999;i++)

            {

                if(Math.pow(i/100,3)+Math.pow(i%10,3)+Math.pow(i/10%10, 3)==i)

                {

                    System.out.println(i);

                }

            }

        }

    }

      

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    package liu0917;

    public class E {

        public static void main(String[] args)

        {

            Print pr=new Print();

            pr.output();

        }

    }

      

    2.编写Java应用程序。首先,定义一个Print类,它有一个方法void output(int

    x),如果x的值是1,在控制台打印出大写的英文字母表;如果x的值是2,在

    控制台打印出小写的英文字母表。其次,再定义一个主类——TestClass,在主类

    的main方法中创建Print类的对象,使用这个对象调用方法output ()来打印出大

    小写英文字母表。

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    19

    20

    21

    22

    23

    24

    25

    26

    27

    28

    29

    30

    31

    32

    package liu0917;

    public class Print2

    {

        int x;

        void output()

        {

             if(x==1)

             {

                 for(int i =65;i<=90;i++)//大写字母在char类型中的位置

                   {

                     char a =(char) i;

                     System.out.print(a);

                   }

             }

             else if(x==2)

             {

                  for(int i =97;i<=122;i++)

                   {

                      char a =(char) i;

                      System.out.print(a);

                   }

             }

             else

             {

                 System.out.println("输入有误");

             }

        }

         

             

    }

      

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    package liu0917;

    import java.util.Scanner;

    public class TestClass2 {

        public static void main(String[] args)

        {

            Print2 pr = new Print2();

            Scanner sc = new Scanner(System.in);

            System.out.println("请输入x的值");

            pr.x=sc.nextInt();

            pr.output();

        }

    }

      


    3、

    .按要求编写Java应用程序。

    (1)建立一个名叫Cat的类:

    属性:姓名、毛色、年龄

    行为:显示姓名、喊叫

    (2)编写主类:

    创建一个对象猫,姓名为“妮妮”,毛色为“灰色”,年龄为2岁,在屏幕上输

    出该对象的毛色和年龄,让该对象调用显示姓名和喊叫两个方法。 

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    package com.hanqi;

    public class Mao {

        String name,maose;

        int age;

         

        void xingwei()

        {

            System.out.println("猫的姓名:"+name);

             

            System.out.println("猫的叫声:"+"喵喵");

        }

         

    }

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    19

    20

    21

    22

    23

    24

    25

    26

    27

    28

    package com.hanqi;

    import java.util.Scanner;

    public class Test02 {

        public static void main(String[] args) {

            Mao ma=new Mao();

            ma.name="妮妮";

            ma.maose="灰色";

            ma.age=2;

            Scanner sc=new Scanner(System.in);

            System.out.println("输入猫的颜色:");

            String str=sc.nextLine();

            System.out.println("输入猫的年龄:");

            int in=sc.nextInt();

            if(ma.maose.equals(str))

            {

            ma.xingwei();

            }

            else

            {

                System.out.println("查询不到猫信息");

            }

        }

    }

          

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

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    19

    20

    21

    22

    23

    24

    25

    26

    27

    28

    29

    30

    31

    32

    package HomeWork01;

    import java.util.Scanner;

    public class HomeWork01 {

        static int number=4;        //输入4个数存放在数组中                   

        static int[] t1 = new int[number];           

        public static void main(String[] args) {

            HomeWork01 jiejie=new HomeWork01();

            jiejie.shunxun();

        }

        void shunxun(){

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

                    Scanner in_t1 = new Scanner(System.in);//循环输入数组

                    for(int i=0;i<number;i++){

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

                    for (int i = 0; i < t1.length; i++) {

                        int pos = i;

                        for (int j = i + 1; j < t1.length; 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 (int i = t1.length - 1; i >= 0; i--)

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

        }

    }

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

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    19

    20

    21

    22

    23

    24

    25

    package HomeWork02;

    import java.util.Scanner;

    public class HomeWork02

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

        {

        public static void main(String [] args){

        Scanner sc = new Scanner(System.in);

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

        int a = sc.nextInt();

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

        int b = sc.nextInt();

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

        int c = sc.nextInt();

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

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

            return;

        }

        else{

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

        }

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

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

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

        }

    }

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

    写字母,否则,不转换。

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    19

    package HomeWork03;

    import java.util.Scanner;

    public class HomeWork03 {

        public static void main(String[] args) {

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

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

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

            Scanner input = new Scanner(System.in);

            char zimu=input.next().charAt(0);

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

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

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

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

              }

              else{

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

              }

        }  

    }

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

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    19

    20

    21

    22

    23

    24

    25

    26

    27

    package HomeWork04;

    import java.util.Scanner;

    public class HomeWork04 {

        public static void main(String [] args){

        int a;

        int b;

        int c;

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

        Scanner in=new Scanner(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("不能构成三角形!");

        }

        }

        }

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

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    19

    20

    21

    22

    23

    24

    25

    26

    27

    28

    29

    30

    31

    32

    33

    34

    35

    package HomeWork05;

    import java.util.Scanner;

    public class HomeWork05 {

    public static void main(String[]args){

        Scanner sc =new Scanner(System.in);

        System.out.print("年");

        int year=sc.nextInt();

        System.out.print("月");

        int month=sc.nextInt();

        System.out.print("日");

        int day=sc.nextInt();

        int days=0;

        switch(month){

            case 12:days+=30;

            case 11:days+=31;

            case 10:days+=30;

            case 9:days+=31;

            case 8:days+=31;

            case 7:days+=30;

            case 6:days+=31;

            case 5:days+=30;

            case 4:days+=31;

            case 3:

                if((year%4==0&&year%100!=0)||(year%400==0)){

                    days+=29;

                    }

                else{

                    days+=28;

                    }

            case 2:days+=31;

            case 1:days+=day;

        }

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

    }

    }

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

    数?

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    19

    20

    21

    22

    23

    24

    25

    package HomeWork06;

    import java.util.Scanner;

    public class HomeWork06 {

    public static void main(String[]args){

         

        Scanner sc =new Scanner(System.in);

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

        int number=sc.nextInt();

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

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

        }

        else if(number/1000>=1){

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

        }

        else if(number/100>=1){

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

        }

        else if(number/10>=1){

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

        }

        else if(number/1>=1){

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

        }

        }

    }

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

    90~100 优秀

    80~89 良好

    70~79 中等

    60~69 及格

    0~59 不及格

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    19

    20

    21

    22

    23

    24

    25

    26

    27

    28

    29

    30

    31

    package HomeWork07;

    import java.util.Scanner;

    public class HomeWork07 {

        public static void main(String[] args) {

            HomeWork07 jiejie=new HomeWork07();

            jiejie.chengjie();

        }

        void chengjie(){

            Scanner sc = new Scanner(System.in);

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

            int a = sc.nextInt();

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

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

            }

            else if(a>=80&&a<90){

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

            }

            else if(a>=70&&a<80){

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

            }

            else if(a>=60&&a<70){

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

            }

            else{

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

            }

        }

    }

    11、编写程序,对输入的一个整数,按相反顺序输出该数。例如,输入为 3578,

    输出为 8753。

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    19

    20

    21

    22

    23

    24

    25

    package HomeWork08;

    import java.util.Scanner;

    public class HomeWork08 {

        public static void main(String[]args){

            Scanner sc =new Scanner(System.in);

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

            int read = sc.nextInt();

            //方法一     reverse()API

            System.out.println("方法一:");

            StringBuilder sb  =  new StringBuilder(String.valueOf(read));

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

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

            String str= read +"";

            char fuzu[]=str.toCharArray();

            String temp="";

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

                temp=temp+fuzu[a];

            }

            System.out.println("方法二:");

            System.out.println(temp);

             

    }

    }

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

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    package HomeWork09;

    public class HomeWork09 {

        public static void main(String[] args) {

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

            int a=1;

            int sum=0;

            while(a<=200){

                if(a%3==0){

                    sum=sum+a;

                }

                a++;

            }

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

        }

    }

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

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    19

    package HomeWork10;

    public class HomeWork10 {

        public static void main(String[] args) {

            int num=200;

            while (num<=500) {

                boolean tag=true;       //素数标记

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

                    if(num % d==0){

                        tag=false;

                        break;

                    }

                }

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

                    System.out.println(num);

                }

                num++;

            }

        }

    }

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

    #

    # # #

    # # # # #

    # # # # # # #

    # # # # # # # # #

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    package HomeWork12;

    public class HomeWork12 {

        public static void main(String[] args) {

            int aa=-1;

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

                aa+=2;

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

                    System.out.print( "#"  );

                }

                System.out.println();}

             

        }

    }

    15、验证“鬼谷猜想”:对任意自然数,若是奇数,就对它乘以 3 再加 1;若是

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

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

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    19

    20

    21

    22

    23

    24

    25

    26

    27

    28

    29

    package HomeWork13;

    import java.util.Random;;

    public class HomeWork13 {

        public static void main(String[] args) {

            /*

             * 验证“鬼谷猜想”:对任意自然数,若是奇数,

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

             * 这样得到一个新数,

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

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

            int num;

            Random rd=new Random();

            //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);

        }

    }

    16、编程求 1~10000 之间的所有“完全数”,完全数是该数的所有因子之和等于该数的数。例如,6 的因子有 1、2、3,且 6=1+2+3,所以 6 是完全数。

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    19

    20

    21

    22

    23

    24

    25

    26

    27

    28

    29

    30

    31

    package HomeWork14;

    public class HomeWork14 {

        public static boolean isyinzi(int num ){

            int sum=0;

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

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

                if(num%d==0){

                    sum+=d;

                }

            }

            return sum==num;

        }

        public static void main(String[] args) {

            // TODO Auto-generated method stub

            /*

             * 编程求1~10000之间的所有“完全数”,

             * 完全数是该数的所有因子之和等

             * 于该数的数。例如,6的因子有1、2、3,

             * 且6=1+2+3,所以6是完全数*/

            for(int a=1;a<=1000;a++){

                int num=a;

                if(isyinzi(num)){

                    System.out.println(num);

                }

            }

        }

    }

    17、一个整数的各位数字之和能被 9 整除,则该数也能被 9 整除。编程验证给

    定的整数能否被 9 整除。

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    19

    20

    21

    22

    23

    24

    25

    26

    27

    package HomeWork15;

    import java.util.Random;

    public class HomeWork15 {

        public static void panduan(int num){

            int b=num/100;      //百位数

            int s=num%100/10;   //十位数

            int g=num%10;       //个位数

            if(num%9==0){

                System.out.println(num+"能被9整除");

                if((b+s+g)%9==0){

                    System.out.println("同时"+num+"的各个位数之和也能被9整除");

                }

                else{

                    System.out.println("但是"+num+"的各个位数之和不能被9整除");

                }

            }

            else

                System.out.println("next test!");

             

        }

        public static void main(String[] args) {

            Random rd=new Random();

            int shu=10+rd.nextInt(90);

            shu =shu *9;

            panduan(shu);

        }

    }

    17、水仙花数是指一个 n 位数 ( n≥3 ),它的每个位上的数字的 n 次幂之和等

    于它本身。(例如:1^3 + 5^3 + 3^3 = 153)。编程求出所有三位的水仙花数。

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    19

    package HomeWork17;

    public class HomeWork17 {

        public static void main(String[] args) {

            for(int num=100;num<1000;num++){

                if(isshuixian(num)){

                    System.out.println(num);

                }

            }

        }

        //判断一个数是不是水仙花数

        public static boolean isshuixian(int num){

            int b=num/100;

            int s=num%100/10;

            int g=num%10;

            return Math.pow(b, 3)

                    +Math.pow(s, 3)

                    +Math.pow(g, 3)==num?true:false;

        }

    }

    20、将一个正整数分解质因数。例如:输入 90,打印出 90=2*3*3*5。

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    package HomeWork20;

    import java.util.Scanner;

    public class HomeWork20 {

        public static void main(String[] args) {

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

            Scanner sc=new Scanner(System.in);

            int num=sc.nextInt();

            System.out.println(num+"的质因数有:");

            for(int i=2;i<num;i++){

                while(num%i==0){

                    num/=i;

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

                }

            }

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

        }

    }

  • 相关阅读:
    Python学习第90天(链表实现、jQuery事件绑定)
    Css查漏补缺06-css布局
    Css查漏补缺05-overflow
    Css查漏补缺03-导航栏小例子
    Css查漏补缺03-盒模型小实例
    Css查漏补缺02-盒模型
    Css查漏补缺01—css样式
    Html查漏补缺05-页面布局
    Html查漏补缺04-表单
    Html查漏补缺03-表格
  • 原文地址:https://www.cnblogs.com/jason111/p/8747840.html
Copyright © 2011-2022 走看看