Originariamente inviato da Xaratroom
Facendo uno scambio dovresti riuscirci
codice:
struct Nodo
{
   /*...*/
   struct Nodo *next;
} *testa;

struct Nodo *Scambia () 
{
   struct Nodo *temp = testa;
   struct Nodo *temp2 = NULL;
   while (temp)
      {
       struct Nodo *appoggio = temp2;
       temp2 = temp;
       temp = appoggio;
       temp = temp -> next;
       }
   return temp2;
}
La funzione Scambia dovrebbe ritornare la nuova testa ...
L'ho buttata giù così, non so neanche se funziona, fai delle prove perché io non ne ho il tempo...
Aspetta lol ho dimenticato un po' di roba