Ajuda com um COD em JS

“Leia uma matriz 10 estudantes, 10 questões de múltipla escolha. Leia também um vetor de 10 posições contendo o gabarito de respostas que podem ser a, b, c ou d. Seu programa deverá comparar as respostas de cada candidato com o gabarito e emitir um vetor Resultado, contendo a pontuação correspondente.” O meu cod esta tendo um problema na hora da verificação das outras matrizes que não são da posição [0] tirando isso ta funcionando

function gerarG() {
    var alt = ["A","B","C","D"];
      var random = " "
      for (let i = 0; i < 1; i++) {
        var random = alt[Math.floor(Math.random()*alt.length)];
      }
      return random;
}
/////////////////////////////////////////////////////////////
  function gerarProva() {
    var alunoP = [];
    var gabarito = [];
    for (let i = 0; i < 10; i++) {
      gabarito.push(gerarG())
      for (let j = 0; j < 1; j++) {
        alunoP.push(gerarG());
      }
    }
    return alunoP
  }

///////////////////////////////////////////////////////////
let total = 0;
var soma=[];
var recebeProva = []
var recebeGabarito = []

//////////////////////////////////////////////////////////

  recebeGabarito.push(gerarProva())
  console.table(recebeGabarito)  

  for (let i = 0; i < 10; i++) {
    recebeProva.push(gerarProva());  
  }

  console.table(recebeProva)
  
    for (let i = 0; i < 1; i++) {
      for (let j = 0; j < 10; j++) {
        if(recebeProva[i][j]===recebeGabarito[i][j]){
          soma++ 
        }
      }
    }
    console.log(" aluno, Nota: "+ soma)