把数组按照降序排列,然后加入一个数,重新排列
程序代码:
package com.bd22; import java.util.Scanner; public class Sort { public static void main(String[] args) { int[] nums = new int[6]; nums[0]=87; nums[1]=76; nums[2]=84; nums[3]=96; nums[4]=56; // 对比的轮数 for(int i = 0; i < nums.length-1; i++) { // 每一轮对比的次数 for(int j = 0; j < nums.length - i - 1; j++) { int n = 0; if(nums[j]<nums[j+1]) { n = nums[j]; nums[j] = nums[j+1]; nums[j+1] = n; } } } // 打印出排序后的数组 System.out.println("把数组按降序排列:"); for(int num:nums ) { System.out.print(num+"\t"); } System.out.println("\n"+"请输入一个数字:"); Scanner s = new Scanner(System.in); int num = s.nextInt(); int n = -1; // 先算出插入的数的下标 for(int i = 0; i < nums.length; i++) { if(num > nums[i]) { n = i; break; } } // 给数组重新赋值 for(int i = 5; i >= n+1; i--) { nums[i]=nums[i-1]; } nums[n]=num; // 打印出输入数字后的排序 System.out.println("输入一个数字后的数组重新排列:"); for(int a:nums ) { System.out.print(a+"\t"); } } }
运行结果: