Witam
Program się kompiluje ale wysypuje się gdy używa funkcji, która układa elementy listy alfabetycznie:
struct student *dodaj_alfabet (struct student *lista){
struct student *p;
p=lista;
int n; //wyznaczanie ilosci elementow na liscie
while(lista != NULL)
{n=n+1;
lista=lista->nastepny;};
lista=p;
int i,j;
struct dane_studenta *tmp;
int change;
for (i=0; i<n-1; ++i)
{
change=0;
for (j=0; j<n-1-i; j++)
{
if (lista->nastepny->dane.nazwisko < lista->dane.nazwisko) //porównanie sąsiądów
{
tmp=lista->dane;
lista->dane=lista->nastepny->dane;
lista->nastepny->dane=tmp; //wypchanie bąbelka
change=1;
}
}
if(!change) break; // nie dokonano zmian - koniec!
lista=p;
}
}
Wiecie może w czym problem?