Be, non so cosa dirti, a parte un puntatore non inizializzato ė considerato NULL??
Perché il puntatore next, dell'ultimo nodo, quello dichiarato nel main, ė indefinito. Potrebbe essere questo il problema col while.