Asumo que ya sabes que snon las listas cierto?
//Primero se define una estructura
#include<stdio.h>
struct lsimple
{
char info;
struct lsimple* next;
};
//inicia el programa
int main()
{
int i;
//se crea una variable del tipo definido
struct lsimple* mylist, *aux, *prim;
//se crea el primer nodo
/*para lo cual se separa memoria con malloc y se hace un cast para que sea un
apuntador a un espacio de memoria del tamaño de la estructura*/
mylist=(struct lsimple *)malloc(sizeof(struct lsimple));
/*se inicializa el nodo*/
mylist->info=' ';//null
mylist->next=NULL;
//en este tipo de lista siempre es util
//guardar la ubicacion del primer nodo
prim=mylist;
/*ahora creare 5 nodos, para que te
sirva de ejemplo*/
while(i<5)
{
aux=mylist;
mylist=(struct lsimple *)malloc(sizeof(struct lsimple));
aux->next=mylist;
mylist->info='0';
mylist->next=NULL;
i++;
}
return 1;
}
aclaraciones de utilidad:
llevar el apuntador al primer nodo:
llevar el a`puntador al ultimo nodo:
/*..
mylist=ultimoN(mylist);
...*/
struct lsimple *ultimoN(struct lsimple *p)
{
while(p->next!=NULL)
{
p=p->next;
}
return p;
}
con esto creo que es suficiente para que te defiendas solita, advierto que el codigo lo escribi directamente en el foro, y puede traer errorcitos de compilacion, pero los algoritmos si estan sin errores.
suerte
Juank