第八周作业

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

public class A {

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

2、将一个字符数组的值(neusofteducation)拷贝到另一个字符数组中。

public class A {

    /**
     * @param args
     */
    //.
    public static void main(String[] args) {    
                char []Arr={'A','B','C','D','E'};
                char []Arr2={'G','K','L','M','N'};
                System.out.println("替换前");
                for(char d : Arr2){
                    System.out.print(d+" ");
                }
                System.arraycopy(Arr, 0, Arr2, 0, 3);
                System.out.println();
                System.out.println("替换后");
                for(char c : Arr2){
                    System.out.print(c+" ");
                }
     }
}    

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

public class A {

    /**
     * @param args
     */
    //.
    public static void main(String[] args) {    
                int []arr={1,6,2,3,9,4,5,7,8};
                for(int i=0;i<arr.length-1;i++){
                    for(int j=0;j<arr.length-i-1;j++){
                        if(arr[j]>arr[j+1]){
                            int temp=arr[j];
                            arr[j]=arr[j+1];
                            arr[j+1]=temp;
                        }
                    }
                    System.out.println(arr[i]);
                }
     }
}


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

public class A {

    /**
     * @param args
     */
    //
    public static void main(String[] args) {    
                double [][]arr=new double[5][4];
                for(int i=0;i<20;i++){
                    arr[i/4][i%4]=i;
                }
                for(int j=0;j<arr.length;j++){
                    for(int k=0;k<arr[j].length;k++){
                        
                        System.out.print(arr[j][k]+"\t");
                    }
                    System.out.println();
                }
         }
    }    


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

public class A {

    /**
     * @param args
     */
    //
    public static void main(String[] args) {    
                int []arr={18,25,7,36,13,2,89,63};
                int max=arr[0];
                int maxid=arr[0];
                for(int i=1;i<arr.length;i++){
                    if(arr[i]>max){
                        max=arr[i];
                        maxid=i;
                    }
                }
                System.out.print("最大值是"+max+"\n下标是"+maxid);
     }
}    


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

public class A {

    /**
     * @param args
     */
    //
    public static void main(String[] args) {    
        int []arr={2,3,6,4,3,8};
        for(int j=0;j<arr.length;j++){
            System.out.print(arr[j]+" ");
        }
        System.out.println();
        System.out.println("倒叙输出");
        for(int i=arr.length-1;i>=0;i--){
            System.out.print(arr[i]+" ");
        }
     }
}    


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

public class A {

    /**
     * @param args
     */
    //
    public static void main(String[] args) {    
        int []arr={2,2,3,3,4,4,5,5,6,6};
        for(int i=0;i<arr.length;i++){
            System.out.print(arr[i]+" ");
        }
        System.out.println();
        System.out.println("重复项清零");
        for(int j=0;j<arr.length;j++){
            for(int k=j+1;k<arr.length;k++){
                if(arr[j]==arr[k])
                    arr[k]=0;
            }
        }
        for(int j=0;j<arr.length;j++){
            System.out.print(arr[j]+" ");
        }
        
     }
}    

 


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

public class A {

    /**
     * @param args
     */
    //
    public static void main(String[] args) {    
                int []arr={-10,2,3,246,-100,0,5};
                double p,sum;//平均值
                int max,min;
                sum=0;
                max=arr[0];
                min=arr[0];
                for(int i=1;i<arr.length;i++){
                    if(arr[i]>max)
                        max=arr[i];
                    if(arr[i]<min)
                        min=arr[i];
                }
                for(int k=0;k<arr.length;k++){
                    sum+=arr[k];
                }
                p=sum/7;
                System.out.print("最大值是"+max+"\n最小值是"+min+"\n平均值是"+p);
     }
}


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

public class A {

    /**
     * @param args
     */
    //
    public static void main(String[] args) {    
        int []arr=new int[20];
        int a,sum;
        a=1;
        sum=0;
        for(int i=1;i<=arr.length;i++){
            sum+=a;
            a=sum-a;
            System.out.print(sum+"\t");
        }
     }
}


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

import java.util.Random;
public class A {

    /**
     * @param args
     */
    //
    public static void main(String[] args) {    
        Random r=new Random();
        int []arr=new int[10];
        for(int i=0;i<arr.length;i++){
            arr[i]=r.nextInt(101);
            System.out.print(arr[i]+"\t");
        }
        for(int j=0;j<arr.length;j++){
            for(int k=j;k<arr.length;k++){
                if(arr[j]>arr[k]){
                    int temp=arr[j];
                    arr[j]=arr[k];
                    arr[k]=temp;
                }
            }
        }
        System.out.println();
        System.out.println("排序后");
        for(int f=0;f<arr.length;f++){
            System.out.print(arr[f]+"\t");
        }
     }
}

posted @ 2021-04-27 16:45  董梦坤  阅读(48)  评论(0编辑  收藏  举报