zoukankan      html  css  js  c++  java
  • 第四次上机练习

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

    package a;
    
    import java.util.Scanner;
    
    public class sss {
    
    	public static void main(String[] args) {
    		// TODO Auto-generated method stub
    		int []x= {10,20,30,40,50};
    		for(int y:x) {
    			System.out.println(y+" ");
    		}
    	}
    	}
    

      

    2.编写一个简单程序,要求数组长度为5,动态赋值10,20,30,40,50,在控制台输出该数组的值

    package a;
    
    import java.util.Scanner;
    
    public class sss {
    
    	public static void main(String[] args) {
    		// TODO Auto-generated method stub
    		int[]arr= {10,20,30,40,50};
    		for(int i=0;i<arr.length;i++) {
    			System.out.print(arr[i]+" ");
    		}
    	}
    }
    

     

     3.编写一个简单程序,定义整型数组,里面的元素是{23,45,22,33,56},求数组元素的和、平均值

    package a;
    
    import java.util.Scanner;
    
    public class sss {
    
    	public static void main(String[] args) {
    		// TODO Auto-generated method stub
    		int a[]= {23,45,22,33,56};
    		double sum=0;
    		for(int i=0;i<a.length;i++){
    			sum+=a[i];
    		}
    		System.out.println("和是"+sum+"平均值是"+sum/5);
    	}
    }
    

      

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

    package a;
    
    import java.util.Scanner;
    
    public class sss {
    
    	public static void main(String[] args) {
    		// TODO Auto-generated method stub
    		int[]arr= {18,25,7,36,13,2,89,63};
    		int temp=0;
    		for(int i=0;i<arr.length-1;i++) {
    			if(arr[i]>arr[i+1]) {
    				if(temp<arr[i]) {
    				temp=arr[i];
    				}
    			}
    }	
    		System.out.println(temp);
    		int j=0;
    		for(j=0;j<arr.length;j++) {
    			if(temp==arr[j]) {
    				break;
    			}
    		}
    		System.out.println(j);
    	}
    }
    

      

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

    package a;
    
    import java.util.Scanner;
    
    public class sss {
    
    	public static void main(String[] args) {
    		// TODO Auto-generated method stub
    		 int i ;
    	        int[] arr;
    	        System.out.println("请输入数组的长度");
    	        Scanner inp = new Scanner(System.in);
    	        int num = inp.nextInt();
    	        arr = new int[num];
    	        System.out.println("请输入"+num+"个数");
    	        Scanner in = new Scanner(System.in);
    	        for(i =0 ;i<arr.length;i++){
    	            arr[i] = in.nextInt();
    	        }   
    	        for(i = 0;i<arr.length/2;i++){
    	            int m = arr[i];
    	            arr[i] = arr[arr.length-1-i];
    	            arr[arr.length-1-i] = m;
    	        }
    	        for(i = 0;i<arr.length;i++){
    	            System.out.print(arr[i]+" ");
    	        }
    }
    }
    

      

    6.  {不会}     有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。(附加题)   

    package a;
    
    import java.util.Scanner;
    
    public class sss {
    
    	public static void main(String[] args) {
    		// TODO Auto-generated method stub
    		int[] arr = {14, 18, 23, 8, 421, 42, 89, 9, 88, 36};
    		int[] sortArr = bubbleSort(arr);
    		
    		System.out.println("数组插入数字前排序顺序:");
    		printArr(sortArr);
    		
    		System.out.println("请输入要插入的数字:");
    		@SuppressWarnings("resource")
    		Scanner scanner = new Scanner(System.in);
    		int number = scanner.nextInt();
    		
    		int[] insertArr = insert(sortArr, number);
    		System.out.println("数组插入数字后排序顺序:");
    		printArr(insertArr);
    		
    	}
    	
    	//冒泡排序
    	private static int[] bubbleSort(int[] arr) {
    		
    		for (int i=0; i<arr.length; 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;
    				}
    			}
    		}
    		return arr;
    		
    	}
    	
    	//插入数字后的数组排序
    	private static int[] insert(int[] arr, int number) {
    		
    		int[] tempArr = new int[arr.length+1];
    	
    		for (int i=0; i<arr.length; i++) {
    			tempArr[i] = arr[i];
    		}
    		tempArr[tempArr.length-1] = number;
    		tempArr = bubbleSort(tempArr);
    		
    		return tempArr;
    		
    	}	
    	
    	//遍历数组
    	private static void printArr(int[] arr) {
    		
    		for (int i=0; i<arr.length; i++) {
    			System.out.print(arr[i]+" ");
    		}
    		System.out.println();
    		
    	}
    
    }
    

      

  • 相关阅读:
    skill:极角排序
    skill:树的重心
    [CF1091F](New Year and the Mallard Expedition)
    2018九省联考(SHOI2018)
    陷入僵局?
    2333
    雨后天晴
    听说我首次抢到食堂最早的馄饨
    难题做不动
    成绩出来了?
  • 原文地址:https://www.cnblogs.com/y611lx/p/12665372.html
Copyright © 2011-2022 走看看