1 import java.util.Scanner; 2 /** 3 * @author 冰樱梦 4 * 时间:2018年下半年 5 * 题目:对学生排序 6 * 7 */ 8 public class Exercise07_17 { 9 public static void main(String[] args){ 10 System.out.println("输入学生的个数: "); 11 Scanner input=new Scanner(System.in); 12 int numberOfStudents=input.nextInt(); 13 String[] names=new String[numberOfStudents]; 14 double[] scores=new double[numberOfStudents]; 15 for(int i=0;i<names.length;i++){ 16 System.out.println("请输入第"+(i+1)+"个学生的姓名: "); 17 names[i]=input.next(); 18 System.out.println("请输入第"+( i+1)+"个学生的分数: "); 19 scores[i]=input.nextInt(); 20 } 21 BubbleSort(scores,names); 22 } 23 public static void PrintArrays(String[] names){ 24 for(String a:names){ 25 System.out.println(a); 26 } 27 } 28 29 30 //冒泡排序从大到小,稍微修改了一下程序,让名字跟着分数一起排序。 31 public static void BubbleSort(double[] scores,String[] names){ 32 for(int i=scores.length-1;i>=0;i--){ 33 for(int j=0;j<scores.length-i-1;j++){ 34 if(scores[j]<scores[j+1]){ 35 double temp=scores[j]; 36 scores[j]=scores[j+1]; 37 scores[j+1]=temp; 38 39 String tem=names[j]; 40 names[j]=names[j+1]; 41 names[j+1]=tem; 42 } 43 } 44 } 45 PrintArrays(names); 46 } 47 }