Programa lista simple c++
#include
#include
#include
#include
struct registro
{
char nombre[30];
char cedula[20];
char telefono[12];
char cead[12];
struct registro *siguiente;
} ;
structregistro *primero, *ultimo;
void mostrar_menu()
{ clrscr();
printf("\n\nMenu:\n=====\n\n");
printf("1.- Registro de ingreso de estudiantes\n");
printf("2.- Registro desalida de estudiantes\n");
printf("3.- Mostrar lista de estudiantes en el aula\n");
printf("4.- Salir\n\n");
printf("Escoge una opción: ");fflush(stdout);
}
voidanadir_elemento() // Con esta función añadimos un elemento al final de la lista
{
struct registro *nuevo;
nuevo = (struct registro *) malloc (sizeof(struct registro)); // reservamos memoria parael nuevo elemento
if (nuevo==NULL) printf( "No hay memoria disponible!\n");
printf("\nNuevo elemento:\n");
printf("Nombre: "); fflush(stdout); // con printf no escribimosdirectamente en la pantalla, fflush(stdout) envia a la pantalla lo q hay en el bufer
gets(nuevo->nombre);
printf("Cedula: "); fflush(stdout);
gets(nuevo->cedula);printf("Teléfono: "); fflush(stdout);
gets(nuevo->telefono);
printf("Cead: "); fflush(stdout);
gets(nuevo->cead);
nuevo->siguiente = NULL; // el campo siguiente va a ser NULL porser el último elemento de la lista
// ahora metemos el nuevo elemento en la lista. lo situamos al final de la lista
if (primero==NULL) // comprobamos si la lista está vacía. tambiénvale ultimo==NULL
{
printf( "Primer elemento\n");
primero = nuevo;
ultimo = nuevo;
}
else
{
ultimo->siguiente = nuevo; // el que hasta ahora era el último tiene que apuntar alnuevo
ultimo = nuevo; // hacemos que el nuevo sea ahora el último
}
}
void mostrar_lista()
{
struct registro *auxiliar; // lo usamos para recorrer la lista
int i;...
Regístrate para leer el documento completo.