Java,第二次作业——找出两个分数最高的学生

时间:2025-04-02 17:01:03
public static void f10() { System.out.println("请输入学生的个数"); Scanner input=new Scanner(System.in); int num=input.nextInt();//num为学生的个数 if(num<2) { System.out.println("输入学生的个数过少"); System.exit(0);//结束程序 } int i=0; double[] grade_arr= new double[num];//创建成绩数组 String[] name_arr= new String[num];//创建名字数组 for(i=0;i<num;i++) { System.out.println("请输入第"+(i+1)+"学生的名字和分数"); String name=input.next(); double grade=input.nextDouble(); name_arr[i]=name; grade_arr[i]=grade; } for(int j=0;j<grade_arr.length-1;j++)//将成绩从高到低排序(名字顺序随成绩变动) { for( i=0;i<grade_arr.length-1;i++) { if(grade_arr[i]<grade_arr[i+1]) { double temp1=grade_arr[i]; grade_arr[i]=grade_arr[i+1]; grade_arr[i+1]=temp1; String temp2=name_arr[i]; name_arr[i]=name_arr[i+1]; name_arr[i+1]=temp2; } } } if(grade_arr[0]==grade_arr[1])//判断前两名成绩是否相同 { System.out.println(name_arr[0]+"和"+name_arr[1]+"的成绩均为 "+grade_arr[0]); } else { System.out.println("第一名同学的名字"+name_arr[0]+",他的成绩是 "+grade_arr[0]); System.out.println("第二名同学的名字"+name_arr[1]+",他的成绩是 "+grade_arr[1]); } }