[ Foro de C ]

Listas enlazadas

14-Oct-2016 00:37
Invitado (stacy)
0 Respuestas

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.)