Bueno, no soy un maestro, pero te dejo mi idea:
Pienso que estás tratando de generar una sola tabla, con lo cual te estás complicando demasiado, la vida, es decir, estás viendo el todo como lo más importante, cuando el todo, lo conforman sus partes...
Básicamente aqui tienes una estructura de pila no?
Código:
--------- -------------
CURSO | | Fernando |
--------- -------------
SQL | | 4 |
--------- -------------
Visual | | 5 |
--------- -------------
FOX | | 7 |
--------- --------------
Cada pila podría ser un arreglo...
Ahora lo mas importante, me parece que debería ser la estructura de tu base de datos, salvo la mejor opinión de mis amigos normalizadores, me parece que tus 3 tablas deberían estar conformadas con los siguientes datos:
"Un alumno asiste a muchos cursos"
"En un curso, hay muchos alumnos"
La relación de alumnos - cursos es de "muchos a muchos", por lo tanto, en el estricto sentido de la metodología de análisis y diseño estructurado (

por fin encontré el aplicativo para tan rimbombante término

), deberías tener además de tus tablas de alumno y cursos, una tabla de relación, donde se encuentren los ID's de los alumnos, relacionados con los ID's de los cursos:
Código:
alumnos
alumno_id | alumno_nombre |
1 | Fernando |
2 | Hugo |
3 | Luis |
cursos
curso_id | curso_nombre
1 SQL
2 Visual
3 Fox
usuarios_cursos
usuario_id | curso_id | nota
1 1 4
1 2 5
1 3 6
2 1 7
2 2 5
2 3 6
3 1 1
3 2 3
3 3 4
Mañana Seguimos, je je, me estoy durmiendo...
La idea como te dije anteriormente es formar pilas, y lo podrías solucionar con arreglos o una matriz, pero deja descansar las pocas neuronas que me quedan
Salu2,