PDA

Ver versión completa : Problema Manejo Varias Estructuras


george180
15-feb-2007, 18:00
K tal muchachso Estoy realizando un pekeño sistemita que es para la Universidad y quisiera q me ayuden en lo sgte por favor:

El sistema es de Préstamo y devolución de libros (Biblioteca) y Tengo las sgtes estruturas.

struct AP // estructura apellido la cual ira dentro de alumno
{
char p[25];
char m[25];
};

struct A // estructura alumno
{
char codA[9];
struct AP ape;
char nom[25];
int edad;
char profesion[35];
char ciclo[4];
char estadoA[1];
};

struct L //estructura Libro
{
char codL[5];
char titulo[25];
char autor[35];
char editorial[25];
int Aedic;
};

struct E // Estructura Ejemplares del libro
{
int codE;
char codL[5];
char tipoPres[15];
char estadoL[1];
};

struct NA // estructura para crear un nuevo nodo Alumno
{
struct A AL;
struct NA *sig, *ant;
};

struct NL // estructura para crear un nuevo nodo Libro
{
struct L LIB;
struct NL *sig, *ant;
};

struct NE // estructura para crear un nuevo nodo Ejemplar
{
struct E Ejem;
struct NE *sig, *ant;
};

/*** MENU PRINCIPAL QUE LLAMA AL SUBMENU MANTENIMIENTO OPCION 4****/

int Menu()
{
int Opc;
clrscr();
tx(22);gt(21,6);cprintf("SISTEMA DE PRSTAMO Y DEVOLUCIàN DE LIBROS");

tx(14);gt(29,9);cprintf("1. Pr‚stamo de Libros\n");
tx(14);gt(29,10);cprintf("2. Devoluci¢n de Libros\n");
tx(14);gt(29,11);cprintf("3. Registrar Alumno\n");
tx(14);gt(29,12);cprintf("4. Mantenimiento Sistema \n");
tx(14);gt(29,13);cprintf("5. Salir del Sistema\n");
do
{
tx(14);gt(32,15);cprintf("Elegir => ");scanf("%d",&Opc);
}while(!(Opc>=1 && Opc<=5));
return Opc;
}

/*** PROCESA OPCION ELEGIDA DE MENU PRINCIPAL****/

void PMenu(struct NA *&LisA, struct NA *&EleA)
{
NL *LisL;
LisL=NULL;
int Opc;
do{
Opc=Menu();
switch(Opc)
{
case 1: ModificarA(LisA);break; // MODIFICA ALUMNO
case 2: MostrarA(LisA);break; // MUESTRA ALUMNO REGISTRADO
case 3: AgregarA(LisA, EleA);break; // AGREGAR ALUMNO
case 4: PMenuMant(LisL);break; // LLAMA A SUBMENU
case 5: exit(0);break; // SALIR SISTEMA
}
}while(Opc!=5);
}

/*****SUB MENU DE MANTENIMIENTO SISTEMA*****/

int MenuMant()
{
clrscr();
gt(21,6);printf("SISTEMA DE PRSTAMO Y DEVOLUCIàN DE LIBROS");
gt(30,9);printf("MANTENIMIENTO DEL SISTEMA");
gt(30,10);printf("=========================");

gt(33,12);printf("1. Registrar Libro"); // REGISTRA LIBRO
gt(33,13);printf("2. Modificar Libro"); // MODIFCA LUIBRO
gt(33,14);printf("3. Libros Prestados"); //LISTADO LIBROS PRESTADOS
gt(33,15);printf("4. Modificar Alumno"); //
gt(33,16);printf("5. Volver Menu Principal");
do
{
gt(33,18);printf("Elegir => ");scanf("%d",&opc);
}while(!(opc>=1 && opc<=5));
return opc;
}

/*****PROCESA OPCION ELEGIDA EN SUB MENU MANTENIMIENTO ****/

void PMenuMant(struct NL *&LisL)
{
struct NL *EleL;
struct NA *LisA, *EleA;
int opc;
do
{
opc=MenuMant();
switch(opc)
{
case 1: AgregarL(LisL, EleL);break; // LLAMA FUNCION AGREGAR LIBRO
case 2: MostrarL(LisL);break; // MUESTRA LIBROS
case 3: //No hay nada todavia break;
case 4: // No hay nada todavia break;
case 5: PMenu(LisA, EleA);break; // VUELVE MENU PRINCIPAL
}
}while(opc!=6);
}

BUENO DISCULPEN POR HACERLA TAN LARGA :mrgreen: PERO QUERIA SER UN POCO ESPECIFICO. MI PROBLEMA ES Q COMO SON 3 ESTRUCTURAS NO SE COMO LLAMAR LOS PARAMETROS DE UNA FUNCION A OTRA DE CADA ESTRUCTURA (LisA, EleA, LisL, EleL, LisE,EleE).

Donde:
LisA= Es la lista de Alumnos
EleA= Agregar Un nuevo Elemento o nodo a la Lista de Alumnos
LisL= Es la lista de Libro
EleL= Agregar un nuevo Elemento o nodo a la lista de Libros
LisE= Es la lista de Ejemplar
EleE = Agregar un nuevo Elemento o nodo a la lista de Ejemplar

Bueno Muchas Gracias de antemano para quienes me puedan ayudar en esto espero que me entiendan lo k kiero decirles. Por Favor ayudenme es Urgente, Byeeee