Avendo una lista di interi
codice:
typedef struct N{
int data;
struct N * next;
} Node;
typedef Node *List;
Dovrei fare una funzione che metta in ordine gli interi, ho fatto così, ma proprio non va.. qualcuno può dirmi dove sbaglio? Grazie 
codice:
void ListaOrdinata (List *lista) {
List sort;
int flag, temp;
flag = 1;
while (flag) {
flag = 0;
for (; sort->next != NULL; sort = sort->next) {
if (sort->data > (sort->next)->data) {
temp = sort->data;
sort->data = (sort->next)->data;
(sort->next)->data = temp;
flag = 1; // Se una coppia è fuori posto, flag = 1
} } } }