我们已经预先安排了有关2Dimensional数组的任务。问题是这样的。该程序将接受名称和分数。将数据存储在二维数组中。然后显示学生列表及其分数,以获得最高分数。

自从我们的老师教了我们阵列的基本知识以来,我对这个2D阵列并没有太多的了解,我已经做了很多研究,但是仍然无法获得我需要的确切代码。

以下是我未完成的代码。到目前为止,我的问题是我无法打印所有名称和分数。它仅打印最后输入的数据。

任何帮助都可以做。

    int[] studlist;
    String name="";
    String fscore="";
    int i, score;

    Scanner myScanner = new Scanner(System.in);
    BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
    System.out.println("How many students?:");
    int students = myScanner.nextInt();
    studlist = new int[students];
    for( i = 0; i < studlist.length; i++){
   try{

    System.out.println("Enter Name:");
    name = br.readLine();
   }
    catch(IOException e)
{
    System.out.println("Error enter name!");
}
   try{
    System.out.println("Enter Score:");
    fscore = br.readLine();
   }
  catch(IOException f)
{
    System.out.println("Error enter grade!");
}
    }
    System.out.println("Display list of Students and Score:");

      System.out.println(name+" "+fscore);



}


}

最佳答案

创建像这样的二维数组

String[][] arr2d = new String[students][2];

在循环中,您可以使用

arr2d[i][0] = name;


arr2d[i][1] = fscore;

要检查最高分数,请遍历数组并比较分数字段(arr2d[i][1])。

09-30 18:17