当前位置:首页
>
查试题
>
阅读以下说明和Java代码,将应填入 (n) 处的语句或语句成分写在答题纸的对应栏内。【说明】某数据文件students.txt的内容为100名学生的学号和成绩,下面的程序将文件中的数据全部读入对象数组,按分数从高到低进行排序后选出排名前30%的学生。【Java代码】import java.io.*; class Student { private String sNO; //学号 private int Credit; //分数 public int getCredit( ){ return Credit; } public String toString() { return "sNO = " + this.sNO + ", Credit = " + this.Credit; } Student(String sNO, int Credit){ (1) = sNO; (2) = Credit; }} public class SortStudent { void sort(Student[ ] s) { //Sort the array s[ ] in descending order of Credit for (int i = 0; i < s.length-1; i++) { for (int .j = i+1; j < s.length; j++) { if (s[i]. (3) < s[j]. (4) ) { Student tmp = s[i]; s[i] = s[j]; s[j] = tmp; }} } } public static void main(String argv[ ]) { Student[ ] testStudent = new Student[size]; try {BufferedReader in = new BufferedReader(new FileReader("students.txt"));boolean done = false; int i = 0;while (!done) { String s = in.readLine(); //每次读取一个学生的学号和成绩 if (s != null) { String tmp[ ] = s.split(","); testStudent[i++] = (5) (tmp[0], Integer.parseInt (tmp[1])); } else done = true;}in.close(); (6) = new SortStudent();ss.sort(testStudent);System.out.println("top 30%:");for (int j = 0; j < size * 0.3; j++) System.out.println(testStudent[j]); } catch (IOException e) {System.out.println("io error!"); }catch (NumberFormatException e) {System.out.println("not a number!"); } } (7) int size = 100; //学生总数}