Para vaciar el buffer de entrada puedes usar:
Para adquirir una cadena:
scanf("%50[^\n]", alumnos
[contador
].
nombre);
Con esto te va a adquirir toda la cadena, con un máximo de 50 caracteres hasta que se pulse la tecla ENTER, eso es con espacios y tabulaciones.
O
Puedes usar el siguiente código:
fgets(alumnos
[contador
].
nombre, 50, stdin
);
Con ello adquires toda la línea, incluido el retorno de carro, con un máximo de 50 caracteres.
Con cualquiera de las dos te aseguras que no se desborda la memoria del array.