Ciao a tutti, come posso inserire un elemento in fondo ad una catena-1?

Ho pensato a questa soluzione, ma non sono sicuro della sua correttezza:
codice:
Nodo1* p = (Nodo1*) malloc (sizeof(Nodo1));
assert(p!=NULL);

// Inserisco nel nodo puntato da p l'elemento che voglio
p->el = numero;
p->next = NULL;

while (c1!=NULL) // finchè il puntatore alla catena è != da NULL
      c1 = c1->next;
c1 = p;