Hola jeanluisch, lo primero que hay que pensar es como queremos estructurar el programa y qué queremos que haga. Yo voy a considerar que tratamos de hacer un programa que tenga un menú principal, y en ese menú 3 opciones: la opción A permitiría dar de alta a un estudiante. Cuando pulse A me pediría los datos necesarios y los guardaría.
Otra opción sería la opción V para ver los datos de estudiantes, cuando pulse V me preguntará lo que quiero ver y una vez se lo indique me sacará el listado correspondiente.
Y finalmente la opción S para salir del programa.
El esqueleto del programa sería este, a partir de aquí habría que empezar a rellenar cada una de las partes:
/*Nota: en el programa se omiten tildes para evitar problemas con caracteres*/
/*===============================
DIRECTIVAS PARA EL COMPILADOR
=============================*/
#include <stdio.h>
#include <stdlib.h>
#include <string.h> /*Para el manejo de cadenas*/
/*===============================
DECLARACIONES GLOBALES
=============================*/
/*Tipos globlales que se declaran*/
typedef char TipoCadena [40]; /*Definimos un tipo cadena que admite máximo 40 caracteres*/
/*Aquí irían otras declaraciones*/
/*Fin de tipos globales que se declara*/
/*Variables globales que se declaran*/
/* Subprograma 1 */
/* Subprograma 2 */
/* Funcion 1 */
/*Definición de la función */
/* Fin de la funcion 1 */
/* Funcion 2 C*/
/*Cierre de la definición de la función */
/* Fin de la funcion 2*/
/*===============================
BLOQUE PRINCIPAL DEL PROGRAMA
=============================*/
int main(){
/*--- DECLARACIÓN DE VARIABLES ---*/
char caracterTemporal =' ';
char opcionMenu = ' '; /* Almacena la opción de menú elegida*/
char teclasino = ' '; /* Tecla sí / no */
TipoCadena cadenaTemporal = "";
int numeroTemporal=0;
int acumuladoTemporal=0;
/*--- MENÚ PRINCIPAL ---*/
while(opcionMenu !='S'){
printf ("\n");
printf (" GESTION DE ESTUDIANTES \n");
printf (" ==============================\n");
printf ("\n");
printf ("Alta de estudiante (inscribirlo) <Pulsar A>\n");
printf ("Ver estudiantes inscritos en un grado <Pulsar V>\n");
printf ("Salir <Pulsar S>\n");
printf ("\n");
printf (" ==============================\n");
printf ("\n");
printf (" INTRODUZCA UNA OPCION VALIDA <A:V:S> \n");
/*Solicitud iterativa de una entrada que sea válida*/
while (opcionMenu !='A' && opcionMenu !='V' && opcionMenu !='S'){
scanf ("%c", &opcionMenu);
}
/*Fin de la solicitud iterativa de una entrada que sea válida*/
printf ("Ha elegido la opcion: %c\n", opcionMenu);
/*--- FIN DEL MENÚ PRINCIPAL ---*/
/*--- OPCIÓN ALTA DE ESTUDIANTES ---*/
if (opcionMenu =='A'){
printf("Aqui realizamos el tratamiento de alta de estudiantes.\n");
return 0;
} /*Cierre del if que identifica si la opción elegida es la A*/
/*--- FIN DE LA OPCIÓN ALTA DE PELÍCULAS ---*/
/*--- OPCIÓN VER INSCRITOS EN UN GRADO ---*/
if (opcionMenu =='V'){
printf ("\n");
printf (" VER INSCRITOS EN UN GRADO \n");
printf (" ==============================\n");
printf ("\n");
printf ("Aqui el tratamiento para ver inscritos en un grado ");
return 0;
} /*Cierre del if que identifica si la opción elegida es la V*/
/*--- FIN DE LA OPCIÓN VER INSCRITOS EN UN GRADO ---*/
/*--- OPCIÓN SALIR ---*/
if (opcionMenu =='S'){
printf ("\n");
printf ("Ha elegido salir. Pulse enter.\n");
} /*Cierre del if que identifica si la opción elegida es la S*/
/*--- FIN DE LA OPCIÓN SALIR ---*/
/*Si no se ha elegido salir, una vez procesada una opción volvemos al menú sin opción predeterminada*/
if(opcionMenu !='S'){
opcionMenu = ' ';}
} /*Cierre del while(opcionMenu !='S') que controla la salida del programa*/
return 0;
}