Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /* Ejemplo de una pila. */
- #include <stdio.h>
- #include <conio.h>
- #include <stdlib.h>
- //#include <alloc.h>
- void insertar(void);
- void extraer(void);
- void visualizar(void);
- struct pila
- {
- char nombre[20];
- char matricula[10];
- char carrera[10];
- struct pila *ant;
- }
- *CAB=NULL,
- *AUX=NULL;
- main()
- {
- char opc;
- do
- {
- clrscr();
- gotoxy(30,8);printf("1.- Insertar");
- gotoxy(30,10);printf("2.- Extraer");
- gotoxy(30,12);printf("3.- Visualizar la pila");
- gotoxy(30,14);printf("4.- Salir");
- opc=getch( );
- switch(opc)
- {
- case '1': insertar( );break;
- case '2': extraer( );break;
- case '3': visualizar( );
- }
- }while (opc!='4');
- }
- void insertar(void)
- {
- AUX=(struct pila *)malloc(sizeof(struct pila));
- clrscr();
- printf("Nombre: ");
- gets(AUX->nombre);
- clrscr();
- printf("matricula: ");
- gets(AUX->matricula);
- clrscr();
- printf("carrera: ");
- gets(AUX->carrera);
- if (CAB==NULL)
- {
- CAB=AUX;
- AUX->ant=NULL;
- }
- else
- {
- AUX->ant=CAB;
- CAB=AUX;
- }
- }
- void extraer(void)
- /*char op;
- do
- {
- clrscr();
- gotoxy(30,5);printf("Elija la carrera por la cual desea extraer:");
- gotoxy(30,8);printf("1.- Medicina");
- gotoxy(30,10);printf("2.- Biologia");
- gotoxy(30,12);printf("3.- Sistemas");
- gotoxy(30,14);printf("3.- Derecho");
- opc=getch( );
- switch(op)
- {
- case '1': Medicina( );break;
- case '2': Biologia( );break;
- case '3': Sistemas( );break;
- case '4': Derecho( );
- }
- }while (opc!='5');*/
- {
- if (CAB==NULL)
- return;
- AUX=CAB;
- CAB=CAB->ant;
- free(AUX);
- }
- void visualizar(void)
- char op;
- do
- {
- clrscr();
- gotoxy(30,5);printf("Elija la carrera por la cual desea visualizar:");
- gotoxy(30,8);printf("1.- Medicina");
- gotoxy(30,10);printf("2.- Biologia");
- gotoxy(30,12);printf("3.- Sistemas");
- gotoxy(30,14);printf("3.- Derecho");
- op=getch( );
- switch(op)
- {
- case '1': Medicina( );break;
- case '2': Biologia( );break;
- case '3': Sistemas( );break;
- case '4': Derecho( );
- }
- }while (op!='5');
- char o;
- o=op;
- {
- if (CAB==NULL)
- return;
- clrscr();
- AUX=CAB;
- while (AUX!=NULL)
- {
- printf("\tNombre: %s\n \t\t\t\tmatricula: %s\n \t\t\t\tcarrera: %s\n",AUX->nombre,AUX->matricula,AUX->carrera);
- //printf("matricula: %s\n",AUX->matricula);
- //printf("carrera: %s\n",AUX->carrera);
- AUX=AUX->ant;
- }
- getch();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement