1. Se añaden las bibliotecas necesarias para el código.
2. Inicializar el puntero (FILE *puntero) y la variable int cant. 3. Se crea una estructura llamada info como un arreglo 25x4 (25 filas ya que se declara en “registros[25], y las 4 columnas son las diferentes variables inicializadas en la struct 4. Funcion CrearAbrir() Se intenta abrir el archivo y en dado caso que no exista se crea. 5. Función RegistroAlumnos() Se inicializan las variables numero, nom, apellido1, apellido2, m, n, a. Se limpia el buffer del teclado con fflush(stdin); Imprime en pantalla “Digite el Numero del estudiante: ” Se guarda el dato digitado en la variable numero. Se genera un ciclo for para recorrer la estructura info Con strcmp se compara cada uno de los registros de manera que si se encuentra el numero ingresado ya registrado la funcion retorna 0. Si el numero ingresado ya existe se imprime “El estudiante ya esta registrado” Si el número no existe se procede a preguntar y guardar cada dato del estudiante en la estructura info y se aumenta la variable cant en 1 por cada alumno nuevo registrado. Se agregan puntos a lo ingresado en cada registros[].nombre para que se ocupen los 25 campos y evitar un desacomodo 6. Función BuscarAlumnos() Se inicializan las variables a usar Se imprime en pantalla “Ingrese el numero del estudiante que desea mostrar en pantalla:” y se guarda lo digitado en la variable numero. Se recorre la estructura con un for y la funcion strcmp para buscar el numero digitado en registros[m].numero, y si el numero se encuentra se muestran los datos del estudiante y se pregunta “¿Desea eliminar al estudiante de la lista? (Digite 1 para si y 2 para no):” Si se digita 1 el estudiante se elimina y la variable cant se disminuye en 1. Si el numero ingresado no existe se muestra en pantalla “No existe el estudiante que se desea mostrar” 7. Función GuardarDatos() Se inicializan las variables a usar. Se abre el archivo en modo escritura binaria. Se imprime en el archivo “No.Estudiante\tNombre\t\t\t\tGrupo\t Promedio” Si puntero==NULL el archivo no se pudo abrir Si no, se recorre la estructura con un for y se copia todo en el archivo Se cierra el archivo y se muestra en pantalla “Datos Guardados exitosamente” 8. Función GenerarReporte() Se inicializan las variables a usar Se abre el archivo en modo lectura Si puntero==NULL el archivo no se pudo abrir Si no, se imprime en pantalla “Universidad Latina de Costa Rica” y “Informe de Estudiantes y sus Notas” Con while se recorre el archivo hasta no encontrar datos y lo encontrado se imprime en pantalla. Se cierra el archivo Se imprime en pantalla “Cantidad de estudiantes:” que será la cantidad de alumnos registrados en la estructura info. Se imprime en pantalla “Promedio General del Curso: “ donde se muestra el promedio. Se imprime en pantalla “Firma del Docente: ________” y “Firma del Director:________” 9. Int main() Con do while se crea el menú de opciones y con switch se invoca la función dependiendo a el numero leído en la variable opc. Se termina el ciclo si opc==0