Allora suppongo che una select abbia questo tag:
<select name="A[0]"> (con la A, B, C maiuscola)

e NON che ci siano diverse select con:
<select name="A">

Perche` i numeri dentro le quadre iniziano da 1? non sarebbe piu' logico (anche dal punto di vista del PHP) che iniziassero da 0? Io suppongo che vadano da 0 a n-1

La funzione verra` chiamata dal tag form cosi`:
<form name="myform" onsubmit="return verfica(this);">

codice:
<script type="text/javascript">
var num = $n; // il valore di n trasmesso dal PHP
var sel = new Array();

function verifica(ff) {
  for(var i=0; i<num; i++) {
    sel[0] = ff.elements['A['+i+']'];
    sel[1] = ff.elements['B['+i+']'];
    sel[2] = ff.elements['C['+i+']'];

    for(var j=0; j<3; j++) {
      if(sel[j].selectedIndex == 0) {
        alert("campo select "+sel[j].name+" non compilato");
        sel[j].focus();
        return false;
      }
    }
  }
  return true;
}
La funzione si ferma ad ogni errore che trova, e lascia il focus sulla select non compilata. Si potrebbe anche fare la verifica di tutte, e mandare un messaggio unico, ma cosi` e` leggermente piu` semplice.