PDA

Visualizza la versione completa : [C] Problema con ordinamento


Tzao
23-05-2013, 19:25
Salve, mi sto da poco approcciando sia HTML.it che nel mondo di linguaggi di programmazione.
Vengo subito al punto:
Devo elencare in ordine decrescente di valore degli oggetti presenti in una lista ma, con questo codice (vedi sotto), mi va in loop e non capisco dove sia l'errore:


void ordinare (struct ogg* coda)
{
int min=100000;
struct ogg* temp=coda;
struct ogg* p=NULL;
struct ogg* supp=coda;
int scambi=0;
do {
scambi=0;
for(p=coda;p!=NULL;p=p->next)
{
printf("minimo %d e valore %d",min,p->valore);
if(min>p->valore)
{
min=p->valore;
supp->next=p->next;
p->next=temp;
temp->next=supp->next;
scambi++;

} temp=p;
}
}
while (scambi!=0);
printf("Lista: \n");
for(p=coda;p!=NULL;p=p->next){
printf(" Oggetto ricevuto: %s \n",p->nome_ogg);
printf("%d \n",p->valore);
}
}

Qualcuno puņ aiutarmi?? Ringrazio tutti in anticipo :)

Loading