Red de conocimientos turísticos - Conocimientos sobre calendario chino - La siguiente pregunta de programación involucra listas vinculadas. No entiendo la pregunta. Pídale a un experto que la resuelva. . . . .

Ejercicio 3.6 Escribe una función para sumar dos p

La siguiente pregunta de programación involucra listas vinculadas. No entiendo la pregunta. Pídale a un experto que la resuelva. . . . .

Ejercicio 3.6 Escribe una función para sumar dos p

Ejercicio 3.6 Escribe una función para agregar 2 P

Los detalles dependen del contexto. Déjame darte el código fuente de una lista vinculada que yo escribí

/. * Nota: Su elección es C IDE */

#include "stdio.h"

#include "malloc.h"

#define note Linklist L ;

#define rtn return(0);

#define finger int(* link[5])(); link[0]=creat_list;link[1]=build_list; ; enlace [2]=check_list; enlace[3]=key_list;link[4]=add_list;link[5]=del_list;

typedef struct Node

{ int date;

p>

struct Nodo * siguiente;

}Nodo, *Lista de enlaces;

Nodo *m;

int i,e;

nota;

int creat_list()

{ i=e;

L=(Lista de enlaces)malloc(tamañode(Nodo) );

p>

(L)->next=NULL;

printf("Inicialización completada\n");

rtn;}

int build_list ()

{ char c;

Nodo *r,*s;

int flag=1;

r=L;

while(bandera)

{ printf("Ingrese un valor:\n");

scanf("%d ",&c);

p>

if(c!=-1)

{ s=(Nodo *)malloc(tamañode(Nodo));

s->fecha=c;

r->siguiente=s;

r=s;}else

{ bandera=0;

r->next= NULL;

printf("Creación completada:\n");}

}

rtn;}

int check_list()

{ int j;

Nodo * p;

p=L;j=0;

printf("Ingrese el número de serie de datos requerido: ");

scanf("%d",&i);

while((p-> siguiente!=NULL)&&(j

{ p=p->siguiente;

j++;}

if(i==j ) m=p;

printf("El dato que se busca es: %d\n",m->fecha);

rtn;}

int key_list()

{ int key;

Nodo *p;

p=L;

printf("Por favor, introduzca el valor de los datos que desea encontrar:");

scanf("%d",&key);

>

while(p->siguiente!=NULL)

if(p->fecha!=clave)

{p=p->siguiente;

i++;}

else break;

m=p;

printf("El dato que se busca es: %d\n", i) ;

rtn;}

int order_list()

{ int chos;

i=e;

printf(" ╭═══════════════╮ \n");

printf(" ║ Programa de gestión de listas vinculadas║ \n");< / p>

printf(" ╭══════┤ ├══════╮\n");

printf(" ║ ║ Aplicación informática Clase 1 Li Yue║ ║ \ n");

printf(" ║ ╰═══════════════╯ ║\n");

printf(" ║ Descripción: Presione 0 para inicializar la lista vinculada║\n");

printf(" ║ Presione 1 para crear la lista vinculada -1 para finalizar║\n");

printf(" ║ Presione 2 para buscar el nodo por número de serie y devolver el puntero de resultado ║\n");

printf(" ║ Presione 3 para buscar el nodo por valor y devolver el puntero de resultado ║\n");

printf(" ║ Presione 4 para insertar el nodo║\n");

printf(" ║ Presione 5 para eliminar el nodo║\n" );

printf(" ║ Presione 6 para salir║\n");

printf(" ╰════════════════ ══════════ ═══╯\n");

scanf("%d",&chos);

return chos;}

int add_list(int l, int p)

{ int i,e;

Nodo *pre,*s;

int k;

printf(" Ingrese el número de serie de los datos insertados:\n");

scanf("%d",&i);

printf ("Por favor ingrese el valor de los datos insertados:\n") ;

scanf("%d",&e);

pre=L;k=0;

while(pre!=NULL&&k

{ pre=pre->siguiente;

k

=k+1;}

if(!pre)

{ printf("¡Posición de inserción ilegal!\n");

return 0;}

s=(Nodo *)malloc(tamañode(Nodo));

s->fecha=e;

s->siguiente=pre->siguiente ;

pre->next=s;

printf("Operación completada exitosamente\n");

return 0;}

int del_list()

{ Node *pre,*r;

int k;

printf("Ingrese el número de serie para eliminar los datos: \n" );

scanf("%d",&k);

pre=L;k=0;

while(pre->siguiente !=NULL&&k

{pre=pre->siguiente;

k=k+1;}

if(!(pre- >siguiente) )

{ printf("¡La posición del nodo eliminado es ilegal!\n");

return 0;}

r=pre ->siguiente;

pre->siguiente=pre->siguiente->siguiente;

e=r->fecha;

gratis(r);

printf("La operación se completó exitosamente\n");

return 1;}

void main()

{ int c, i=1, e=1;

finger;c=order_list(); /* Matriz de punteros de función*/

while(c!=6)

{enlace[ c](i,e);

c=order_list();}

}