ciao a tutti,
secondo voi per quale motivo la mia funzione di inversione lista non mi riporta l'ultimo elemento della lista originale?
risultato da terminale:codice:typedef struct _list { int n; struct _list *next; }list; list* listinvert(list* head){ list *new, *prec, *tmp; tmp=head->next; head->next=NULL; prec=head; new=tmp; for(; new->next!=NULL; new=tmp){ tmp=new->next; new->next=prec; prec=new; } new->next=prec; head=new; return head; }
fi-user@fiuser-VirtualBox:~/Scrivania/Esame$ ./invertilista
1
2
3
4
5
lista invertita: 5 4 3 2