scusa ma non ho capito perchè c'è tutto quel codice, è alquanto confusionario :P io fossi in te lo riscriverei da capo :P
devi fare questi punti:
- prendi l'elemento in input da inserire;
- controlli il caso che la lista sia vuota;
- controlli che il primo elemento non sia maggiore dell'elemento in input;codice:if(p == NULL){ p = malloc(1*sizeof(struct elemento)); p->info = x; p->next = NULL;
- iteri tutto il resto della lista inserendo dove opportuno;codice:if(p->info > x){ p = malloc(1*sizeof(struct elemento)); p->info = x; p->next = q;
questi sono solo spezzoni ovviamente...codice:while((q != NULL) && (q->info < x)) { prec = q; q = q->next; }

Rispondi quotando