Bootstrap

JAVA头哥作业08 Java入门 - 数组进阶

第1关:数组的复制

编程要求

在右侧编辑器Begin-End中填充代码,将arr1数组中的数据全部复制给arr2数组,最后输出arr2中所有的数据。

package step1;

import java.util.Scanner;

public class HelloWorld {
	public static void main(String[] args) {
		//动态构建arr1
		int[] arr1 = new int[3];
		Scanner sc = new Scanner(System.in);
		for(int i = 0 ; i< arr1.length ; i++){
			arr1[i] = sc.nextInt();
		}
		/********** Begin **********/
		//创建数组arr2
		int[] arr2=new int[3];
		
		
		//使用for循环将arr1的数据复制给arr2
		for(int j=0;j<arr1.length;j++){
            arr2[j]=arr1[j];
        }
		
		
		//输出arr2
		for(int j=0;j<arr2.length;j++){
  System.out.println(arr2[j]);
        }
		
		
		/********** End **********/
	}
}

第2关:数组中元素的查找

编程要求

在右侧编辑器Begin-end处填充代码,实现在数组中查找指定字符串位置的功能。

package step2;

import java.util.Scanner;

public class HelloWorld {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		
		//str为要查找的字符串
		String str = sc.next();
		
		/********** Begin **********/
		//创建数组   arr  给数组赋值 {"张三","张三丰","张无忌","王二麻子","张富贵"}
		String[] arr=new String[]{"张三","张三丰","张无忌","王二麻子","张富贵"};
		   for(int i=0;i<arr.length;i++){
            if(str.equals(arr[i])){
                System.out.println(str+"在数组的第"+(i+1)+"个位置");
            }
        }    

		

		
		
		
		/********** End **********/
	}
}

第3关:交换算法

编程要求

是时候检验一下啦,在右侧编辑器Begin-end中填充代码,完成两个变量的交换吧。

package step3;

import java.util.Scanner;

public class HelloWorld {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int a = sc.nextInt();
		int b = sc.nextInt();
		/********** Begin **********/
		//将a的值赋给b   b的值赋给a
		int c=0;
        c=a;
        a=b;
        b=c;
		
		
		
		

		/********** End **********/
		System.out.println(a);
		System.out.println(b);
	}
	
}

第4关:选择排序

编程要求

在右侧Begin-End区域中添加代码,实现对数组arr的降序排序,并输出排序后的arr数组。

package step4;

import java.util.Arrays;
import java.util.Scanner;

public class HelloWorld {
	
	
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		//动态创建数组
		int[] arr = new int[sc.nextInt()];
		for(int i = 0 ; i< arr.length ; i++){
			arr[i] = sc.nextInt();
		}
		/********** Begin **********/
		for(int i=0;i<arr.length-1;i++){
            for(int j=i+1;j<arr.length;j++){
               
                if(arr[i]<arr[j]){
               int temp;
                    temp = arr[i];
                    arr[i] = arr[j];
                    arr[j] = temp;

            }
            

            }
        }
		
		
		
		
		
		System.out.println(Arrays.toString(arr));
		
		/********** End **********/
	}
}

第5关:冒泡排序

编程要求

在编辑器Begin-end处填充代码,使用冒泡排序对数组arr进行升序排序,最后输出排序之后数组arr中的数据。

package step5;

import java.util.Arrays;
import java.util.Scanner;

public class HelloWorld {
	
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		//动态创建数组
		int[] arr = new int[sc.nextInt()];
		for(int i = 0 ; i< arr.length ; i++){
			arr[i] = sc.nextInt();
		}
		/********** Begin **********/
        
	for(int i=0;i<arr.length-1;i++){
        for(int j=0;j<arr.length-1-i;j++){

        
        if(arr[j]>arr[j+1]){
            int temp=arr[j];
            arr[j]=arr[j+1];
            arr[j+1]=temp;
        }
        }
    }
		
	System.out.println(Arrays.toString(arr));
		
		
		
		
		
		
		
		/********** End **********/
	}
}	

;