Non va bene la dichiarazione di r e x che hai scritto all'inizio ...
r deve essere un elemento di tipo lista e x deve essere un puntatore a lista
Studia bene il capitolo dei puntatori in un qualsiasi libro di C ...codice:lista r; struct lista *x; x=r.punt;