java作业

发布时间 2023-05-31 15:45:33作者: 崔huaqian

1、  给定一个有9个整数(1,6,2,3,9,4,5,7,8)的数组,先排序,然后输出排序后的数组的值。

package lll;
import java.util.Arrays;
public class lll {
    public static void main(String[] args) {

        // TODO Auto-generated method stub
        int a[] = {1,6,2,3,9,4,5,7,8};
        System.out.println("Arrays.sort排序:");
        Arrays.sort(a);

        for (int i:a) {
            System.out.println(i);
        }
        System.out.println("冒泡排序");
        for (int i =0;i<a.length-1;i++) {
            for (int j =0; j<a.length-1-i;j++) {
                if (a[j]>a[j+1]) {
                   int temp =a[j];
                   a[j]=a[j+1];
                   a[j+1] = temp;
                }
            }
        }
    for (int i:a) {
        System.out.println(i);
    }

    }
}


2、  输出一个double型二维数组(长度分别为5、4,值自己设定)的值。

package lll;
public class lll {
public static void main(String[] args) {

// TODO Auto-generated method stub
  double a[][] = new double[5][4];
        for (int i = 0; i < a.length; i++) {
            for (int j = 0; j < a[i].length; j++) {
                a[i][j] = i;
            

        }

        for (int i = 0; i < a.length; i++) {
            for (int j = 0; j < a[i].length; j++) {
                System.out.print(a[i][j]+" ");

            }
          System.out.println();
        }

}
}


3.在一个有8个整数(18,25,7,36,13,2,89,63)的数组中找出其中最大的数及其下标。

package lll;

public class lll {
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        int a[]={18,25,7,36,13,2,89,63};
        int max = a[0];
        int number =0;
        for (int i=1;i<a.length;i++) {
            if (a[i]>max) {
                max=a[i];
            }
        number++;
        }
        System.out.println("最大值为:"+max);
        System.out.println("下标为:"+number);
    }
}

4、  将一个数组中的元素逆序存放

package lll;

import java.util.Arrays;

public class lll {
    public static void main(String[] args) {
       // TODO Auto-generated method stub
        int a[]={10,20,30,40,50};
        int b;
        for (int i =0; i<a.length/2;i++) {
            b=a[i];
            a[i]=a[a.length-i-1];
            a[a.length-i-1]=b;
        }
        System.out.println("倒序输出数值为:");
        for (int i=0;i<a.length;i++) {
            System.out.println(a[i]);
        }
    }
}

 5. 将一个数组中的重复元素保留一个其他的清零。

package lll;

public class lll{

public static void main(String[] args) {

int a[]=new int[] {23,45,67,87,45,99};

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

for(int k=i+1;k<a.length;k++) {

if(a[i]==a[k])

a[k]=0;

}

}

for(int d:a)

 

Syste.out.println(d);

}

 

}

 

6、给定一维数组{ -10,2,3,246,-100,0,5},计算出数组中的平均值、最大值、最小值。

package lll;

 

public class lll{

    public static void main(String[] args) {

int a[]=new int[] {-10,2,3,246,-100,0,5};

        double avg=0;
        int max=0;

        int min=0;
        int sum=0;

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

           if(a[i]>max) {

               max=a[i];
           }

           if(a[i]<min) {
               min=a[i];
           }
           sum+=a[i];

           avg=sum/a.length;

        }

        System.out.println("平均值为:"+avg+"最大值为:"+max+"最小值为:"+min);

    }

}

7、使用数组存放裴波那契数列的前20项 ,并输出

package lll;

public class lll {

public static void main(String[] args) {

int a[]=new int[20];

a[0]=1;

a[1]=1;

for(int i=2;i<a.length;i++) {

a[i]=a[i-2]+a[i-1];

}

for(int d:a) {

System.out.println(d);

}

}

}

8.生成一个长度为10的随机整数数组(每个数都是0-100之间),输出,排序后,在输出

package lll;

import java.util.Scanner;

import java.util.Arrays;

import java.util.Random;

 

public class lll {

 

    public static void main(String[] args) {

        // TODO Auto-generated method stub

Random r=new Random();

        int a[]=new int[10];

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

           a[i]=r.nextInt(101);

        }

        for(int d:a) {

           System.out.println(d);

        }

        System.out.println("排序后再输出");

        Arrays.sort(a);

        for(int c:a) {

           System.out.println(c);

        }

    }

 

}

9.做一个菜单切换程序,主菜单1.登录2.注册3.幸运抽奖4.退出。每个菜单可以返回主菜单。


package lll;

 

 

 

import java.util.Scanner;

 

 

 

public class lll {

 

public static void showMain() {

 

System.out.println("1.登录");

 

System.out.println("2.注册");

 

System.out.println("3.幸运抽奖");

 

System.out.println("4.退出");

 

Scanner input = new Scanner(System.in);

 

int i = input.nextInt();

 

switch (i) {

 

case 1:

 

login();

 

break;

 

case 2:

 

zhuce();

 

break;

 

}

 

}

 

 

 

public static void login() {

 

System.out.println("輸入用戶名");

 

Scanner input = new Scanner(System.in);

 

String name = input.next();

 

System.out.println("输入密码");

 

String pwd = input.next();

 

if (name.equals(pwd)) {

 

System.out.println("登录成功");

 

} else {

 

System.out.println("登录失败");

 

}

 

System.out.println("是否返回主菜单?Y/N");

 

if (input.next().equalsIgnoreCase("y")) {

 

showMain();

 

} else {

 

System.out.println("谢谢使用");

 

}

 

}

 

 

 

public static void zhuce() {

 

System.out.println("请输入用户名");

 

Scanner input = new Scanner(System.in);

 

String name = input.next();

 

System.out.println("输入密码");

 

String pwd = input.next();

 

System.out.println("注册成功");

 

System.out.println("是否返回主菜单?Y/N");

 

if (input.next().equalsIgnoreCase("y")) {

 

showMain();

 

} else {

 

System.out.println("谢谢使用");

 

}

 

 

 

}

 

 

 

// main方法是個特殊的方法,不是任何类的成员。

 

public static void main(String[] args) {

 

showMain();

 

}

 

}