第八周作业

练习

1、 编写一个简单程序,要求数组长度为5,分别赋值10,20,30,40,50,在控制台输出该数组的值。

public class t1 {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        int a[]={10,20,30,40,50};
        for (int i = 0; i < a.length; i++) {
            System.out.println(a[i]);
        }

    }

}

2、 将一个字符数组的值(neusofteducation)拷贝到另一个字符数组中。(知识点:数组复制) [必做题]?

import java.util.Arrays;


public class t2 {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        String []a=new String[]{"n","e","u","s","o","f","t","e"};
        String []b=new String[a.length];
        for (int i = 0; i < a.length; i++) {
            b[i]=a[i];
        }
        System.out.println("输出b为");
        System.out.println(Arrays.toString(b));
    }

}

3、 给定一个有9个整数(1,6,2,3,9,4,5,7,8)的数组,先排序,然后输出排序后的数组的值。(知识点:Arrays.sort排序、冒泡排序)

 import java.util.Arrays;
public class t3 {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        int a[]={1,6,2,3,9,4,5,7,8};
        Arrays.sort(a);
        for (int i = 0; i < a.length; i++) {
            System.out.println(a[i]);
        }
        

    }

}

import java.util.Arrays;
public class t3 {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        int a[]={1,6,2,3,9,4,5,7,8};
        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 c=a[j];
                    a[j]=a[j+1];
                    a[j+1]=c;
                }
            }
        }        
        for (int i : a) {
            System.out.println(i);
        }
    }}

4.输出一个double型二维数组(长度分别为54,值自己设定)的值。(知识点:数组定义和创建、多维数组初始化、数组遍历)

public class t44 {

    /**
     * @param args
     */
    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]=j;
            }
        }
        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();
        }
    }
    
}

5、在一个有8个整数(18257361328963)的数组中找出其中最大的数及其下标。(知识点:数组遍历、数组元素访问) [必做题]?

public class t5 {

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

    }

}

作业

1.将一个数组中的元素逆序存放(知识点:数组遍历、数组元素访问)

package 第八周;

public class h1 {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        int a[]=new int[]{12,5,7,9,89};
        for (int i = a.length-1 ; i >=0; i--) {
            System.out.println(a[i]);
            }
        }

    }

2.将一个数组中的重复元素保留一个其他的清零。(知识点:数组遍历、数组元素访问)

package 第八周;

public class h2 {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        int a[]=new int[]{1,1,1,22,22};
        for (int i = 0; i < a.length; i++) {
            for (int j = 0; j < i; j++) {
                if(a[i]==a[j])
                    a[i]=0;
            }
        }
        for (int i : a) {
            System.out.println(i);
        }

    }

}

3.给定一维数组{ -1023246-10005},计算出数组中的平均值、最大值、最小值。(知识点:数组遍历、数组元素访问)

 

package 第八周;

public class h3 {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        int a[]=new int[]{-10,2,3,246,-100,0,5};
        int max=a[0],min=a[0],sum=0,avg;
        for (int i = 0; i < a.length; i++) {
            sum+=a[i];
            if(a[i]>max)
                max=a[i];
            if(a[i]<min)
                min=a[i];
            
        }
        avg=sum/7;
        System.out.println("最大值是"+max);
        System.out.println("最小值是"+min);
        System.out.println("平均值是"+avg);

    }

}

 

4.使用数组存放裴波那契数列的前20,并输出 1 1 2 3 5 8 13 21

 

 

package 第八周;

public class h4 {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        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 i = 0; i < 8; i++) {
            System.out.println(a[i]);
        }
        }

    }

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

package 第八周;

import java.util.Arrays;
import java.util.Random;

public class h5 {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        int a[]=new int[10];
        for (int i = 0; i < a.length ; i++) {
            Random r=new Random();
             a[i]= r.nextInt(100);
        }
        Arrays.sort(a);
        for (int i : a) {
            System.out.println(i);
        }

    }

}

 

posted @ 2021-04-24 15:50  请叫我妖玉大侠  阅读(51)  评论(0)    收藏  举报