jueves, 3 de julio de 2008

#include<stdio.h>
#include<stdlib.h>

typedef struct nodo nodo;
struct nodo{
int numero;
nodo *sgte;

};
nodo* CreaLista();
int ListaVacia(nodo *);
void ShowMenu();
void Gestor(nodo *);
void IngresarNumero(nodo *);
void VerLista(nodo *);

main()
{
nodo *raiz;

raiz=CreaLista();

Gestor(raiz);
printf("hola q taln");
}

nodo *CreaLista()
{
nodo *p;
p=(nodo*)malloc(sizeof(nodo));
p->sgte=NULL;
return p;

}
int ListaVacia(nodo *raiz)
{
return raiz->sgte==NULL?1:0;
}


void IngresarNumeros(nodo *raiz)
{
int nuevonumero;
nodo *sigue,*nuevonodo;
printf("Estoy ingresando numerosn");
printf("INGRESANDO NUMEROSn");
scanf("%d",&nuevonumero);

while(nuevonumero!=-1){

sigue=raiz;
while(sigue->sgte!=NULL)
sigue=sigue->sgte;
nuevonodo=CreaLista();
sigue->sgte=nuevonodo;
sigue->numero=nuevonumero;

printf("Ingrese un numeron");
scanf("%d",&nuevonumero);

}

getchar();
}
void VerLista(nodo *raiz)
{
nodo *sigue;
printf("Estoy viendo la listan");
getchar();

printf("VER LISTAn");

if(ListaVacia(raiz))
printf("La lista esta vacia");
else
{
printf("Los elementos de la lista son:n");
sigue=raiz;
do{


printf("%d ",sigue->numero);
sigue=sigue->sgte;
}
while(sigue->sgte!=NULL);

}
printf("n FIN DE LA LISTAnn");
}

void ShowMenu()
{
printf("ttMENUntt****n");
printf("1.- Ingresar Numeros a la listan");
printf("2.- Ver Numeros en la listan");
printf("3.- Salirn");
/*printf("4.- Ingresar Numeros a la listan");*/
printf("Ingrese su opcion: ");
}

void Gestor(nodo* raiz)
{
int opcion=0;
ShowMenu();
scanf("%d",&opcion);
while(opcion!=3)
{
switch(opcion)
{

case 1:
IngresarNumeros(raiz);
break;
case 2:VerLista(raiz);
break;
case 3:
break;
default:
printf("Opcion no reconocidan");
break;
}
ShowMenu();
scanf("%d",&opcion);

}
}