[ Foro de C ]
En una clase me dejaron de tarea crear una agenda mediante listas lineales, pero el profesor solo nos dio un archivo, el cual nosotros debemos modificar......el problema es que no se como introducir el siguiente nodo en la lista.....necesito ayuda
esta es la funcion:
void anadir(elemento **cab, int dato)
{
elemento *cabecera = *cab;
elemento *actual = cabecera,*anterior = cabecera, *q;
if (ListaVacia)
{
cabecera = NuevoElemento();
cabecera->dato = dato;
cabecera->siguiente = NULL;
*cab=cabecera;
return;
}
while(actual != NULL && dato > actual->dato)
{
anterior = actual;
actual = actual->siguiente;
}
q = NuevoElemento();
if(anterior == actual)
{
q->dato = dato;
q->siguiente = cabecera;
cabecera = q;
}
else
{
q->dato = dato;
q->siguiente = actual;
anterior->siguiente = q;
}
*cab = cabecera;
}
(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)