typedef struct nodo{
char prodotto[20];
int prezzo;
int quantita;
struct nodo *next;
} tiponodo;
int countlist(tiponodo *t) {
if (!t) return 0;
return 1 + countlist(t->next);
}
void selection_sort(tiponodo *head){
tiponodo *tmp, *tmp1, *tmp2;
int i, j;
for(i=0; i < countlist-1; i=++){
tmp1=head;
int min=i;
for(j=i+1; j < countlist; j=j++){
tmp2=head;
if(tmp1->prezzo >tmp2->prezzo){
strcpy(tmp->prodotto, tmp1->prodotto);
strcpy(tmp1->prodotto, tmp2->prodotto);
strcpy(tmp2->prodotto, tmp->prodotto);
tmp->prezzo=tmp1->prezzo;
tmp1->prezzo=tmp2->prezzo;
tmp2->prezzo=tmp->prezzo;
tmp->quantita=tmp1->quantita;
tmp1->quantita=tmp2->quantita;
tmp2->quantita=tmp->quantita;
}
}
}
}
Nel frattempo ho provato a riadattarlo.. mi è uscito fuori questo ma non ci siamo..