Tu mismo mencionas la clave del proyecto que debes realizar, te la cito.
cada salón tiene un max de 60 alumnos.
materias.
no. total de alumnos.
no. total de alumnos por salón.
no. de edificios.
no. de salones por edificio.
horarios de cada materia.
no. de grupo.
alumnos que re-cursan materias
no. de profesores y materias que imparten
[..]
Con el uso de base de datos puedes obtener primero la cantidad de registros total de alumnos, luego en la tabla del alumno tener salón (puede ser numero, letra, lo que sea), luego tener otra tabla con los salones y edificios correspondientes, finalmente una tabla con la materia y los horarios, ahora que puedes hacer (Se me ocurre a mi y dare un ejemplo)
Nombre | Salon
Juan | 1
Comprobar donde se ubica Salón "1", luego de comprobar, ubicaremos el edificio. y con eso matas los primeros problemas o logicas, luego sencillamente haces una consulta, si en el Salon 1 hay más de 60 registros, pasa al Salon 2 o se quedo sin cupo o le muestras alternativa, donde en el Salon 3, Salon 4 hay por ejemplo, 10 vacantes y 30 vacantes.
Ahora vamos con lo otro, seguimos con el misma tabla del estudiante, por ejemplo el tomo de asignatura "Matematicas" , ¿qué hacemos?, sencillo.
Asignatura | Nombre
Matematicas | Juan
Lenguaje | Juan
Luego comprobamos que el nombre tanto en la tabla de asignatura como de alumnos sea la misma y le mostramos al Alumno que clase tiene y con quién, ¿cómo?, sencillo.
Asignatura | Horario
Matematicas | 8:30 - 10:00
Lenguaje | 10:00 - 10:30
Pero está el punto, ¿que profesor nos tocará?, para eso debemos ingresar mediante la base de datos, algo así.
Profesor | Asignatura | Salon
Juan Pedro | Matematicas | 1
El profesor "Juan Pedro" hará clases en el Salon 1 de Matematicas, entonces le mostramos a "Juan" que es el alumno, que el tendrá clases con "Juan Pedro" en el salón "1" de las 8:30 a las 10.
Para saber el numero total de estudiantes usa SELECT COUNT(*), para la comprobación utiliza if's sencillos. Es más, te recomiendo si tienes una pizarra, anota la lógica y luego la llevas a la practica, deje funciones porque especificas que no sabes mucho de mysql, cualquier consulta sea abierta y/o si tienes alguna ocurrencia al respecto.