Uso de listas enlazadas en lenguaje C
Pero si quieres aprender listas enlazadas, debes dominar ciertos conceptos básicos del lenguaje C.
La función de la lista enlazada a continuación es crear una lista enlazada individualmente de cinco nodos. Después de ingresar los valores de los cinco nodos, el valor de cada nodo se genera por turno.
# include ltstdio.h gt
# include ltstdlib.h gt
//Creación y salida de lista enlazada
Nodo de estructura //Definir el tipo de nodo.
{
int num, puntuación
Nodo * enlace
};
void main();
{
node * creat(int n); //Declaración del prototipo de función
Void print(node * h);
p>
node * head = 0; //Defina el puntero del encabezado del enlace e inicialícelo.
head = creat(5); //Llama a la función creat para crear una lista vinculada.
Print(head); //Llama a la función de impresión para generar la lista vinculada.
}
nodo*creat(int n)
{
Nodo *h=0, *p, * q;
int I;
for(I = 1; i lt= n; i)
{
q=(nodo*) malloc(sizeof(node)); //Asignar un espacio de nodo
scanf("dd", ampq->number ampq->score); //Ingrese el valor del nuevo nodo.
q->; link = 0; //El campo de puntero del nuevo nodo se establece en 0.
If (h==0)
h = q; //El primer nodo es el nodo principal del enlace.
Otro
p->; link = q; //Se agrega un nuevo nodo al final de la lista enlazada
p = q;
}
Return h; //Devuelve el puntero del cabezal de la cadena
}
Void print(node*h)//Definición del vinculado función de salida de lista
{
Mientras (h) // Cuando el puntero H no está vacío, genera el valor del nodo señalado por H.
{
printf("num=d\tscore=d\n ", h- gt; num, h- gt; puntuación
h); = h- gt; // Hacer que h apunte al siguiente nodo
}
}