Ошибка несоответствия ввода Java при использовании сканера

Я начинающий Java-студент и пытаюсь завершить программу, которая использует сканер для ввода имен 5 студентов, а затем цикл внутри, чтобы получить 3 оценки для каждого студента. Я застрял, так как я получаю ошибку несоответствия ввода, и я не знаю почему. Я попытался правильно сопоставить, какие виды ввода поступают на переменные. Любая помощь будет принята с благодарностью!

Вот что у меня есть:

import java.util.Scanner;

public class StudentGrades {
  public static void main(String[] args) {
    Scanner input = new Scanner(System.in);
    // Declare arrays, grades to hold [student #][course] and correspond to the grade. studentNames to be paralell and hold the names.
    int [][] grades;
    grades = new int[5][3];
    String[] studentNames = new String[5];
    int studentNumber = 0;
    int courseNumber = 0;

  // Create loops to put values in both arrays, using student# as a counter
  if (studentNumber < 5) {
    System.out.println("Enter the student name");
    studentNames[studentNumber] = input.next();
    // Nested loop to enter the grades
    if (courseNumber < 5) {
      System.out.println(" Enter a grade for " + studentNames[studentNumber]+" for course #" + courseNumber);
      grades[studentNumber][courseNumber] = input.nextInt();
      courseNumber = courseNumber + 1;
    }
  studentNumber = studentNumber + 1;
    }

  }

}

И вот что я получаю:

Exception at thread "main" java.util.InputMismatchException
at java.util.Scanner.throwfor{Scanner.java:909}
at java.util.Scanner.next{Scanner.java:1530}
at java.util.Scanner.nextInt{Scanner.java:2160}
at java.util.Scanner.nextInt{Scanner.java:2119}
at StudentGrades.main{StudentGrades.java:20}

Ответы на вопрос(3)

Ваш ответ на вопрос