Ahora bien, si queremos utilizar funciones para el ingreso de los datos, lo cual parece muy cuerdo, podríamos tener el siguiente código:
#include <stdio.h>
#include <stdlib.h>
#define MAXNOMBRE 20
typedef struct nodo{
char nombre[MAXNOMBRE];
int valor;
struct nodo* sgte;
}nodo;
void MostrarLista(nodo* raiz)
{
printf("\n La lista esta compuesta de los siguientes elementos\n");
nodo* sigue;
for(sigue=raiz;sigue->sgte!=NULL;sigue=sigue->sgte)
printf("NOMBRE: %s \n VALOR: %d \n", sigue->nombre,
sigue->valor);
printf("NOMBRE: %s \n VALOR: %d \n", sigue->nombre,
sigue->valor);
}
void IngresarPrimerElemento(nodo *raiz)
{
printf("lo logre!\n Ingresa un nombre\n");
scanf("%s",raiz->nombre);
printf("Ingresa un valor\n");
scanf("%d",&raiz->valor);
}
void IngresarElemento(nodo *raiz)
{
nodo* sigue;
sigue=raiz;
while(sigue->sgte!=NULL)
sigue=sigue->sgte;
nodo* nuevo;
nuevo = malloc(sizeof(nodo*));
nuevo->sgte=NULL;
printf("lo logre!\n Ingresa un nombre\n");
scanf("%s",nuevo->nombre);
printf("Ingresa un valor\n");
scanf("%d",&nuevo->valor);
sigue->sgte=nuevo;
}
int main()
{
nodo *p;
p=malloc(sizeof(nodo*));
p->sgte=NULL;
IngresarPrimerElemento(p);
IngresarElemento(p);
MostrarLista(p);
return 0;
}
No hay comentarios:
Publicar un comentario