Witajcie,
Męcze się z przerobieniem dodawania elementów do listy tak żeby od razu sortowały się w zależności od przechowywanej wartości od najmniejszej do największej. Nie potrafie zlokalizowac blędu w moim kodzie. Program po prostu przestaje działać z informacja 'run failed'.
Prosze o pomoc
if (*lista == NULL) {
(*lista)->u.wartosc = atof(wartosc);
strcpy((*lista)->kontrakt, tekst);
(*lista)->nastepny = NULL;
(*lista)->poprzedni = NULL;
} else {
value=atof(wartosc);
while (suwak!= NULL && n==1) {
if(suwak->nastepny==NULL)
{
if((suwak->u.wartosc)<value){
suwak->nastepny = malloc(sizeof (kontr));
suwak->nastepny->poprzedni = suwak;
suwak->nastepny->nastepny = NULL;
suwak->nastepny->u.wartosc = value;
strcpy(suwak->nastepny->kontrakt, tekst);
} else {
suwak->nastepny = malloc(sizeof (kontr));
suwak->nastepny->poprzedni = suwak;
suwak->nastepny->nastepny = NULL;
suwak->nastepny->u.wartosc = suwak->u.wartosc;
strcpy(suwak->nastepny->kontrakt, suwak->kontrakt);
suwak->u.wartosc = value;
strcpy(suwak->nastepny->kontrakt, tekst);
}
} else {
if(suwak->u.wartosc>value)
{
pomoc=suwak->nastepny;
suwak->nastepny=NULL;
suwak->nastepny = malloc(sizeof (kontr));
suwak->nastepny->poprzedni = suwak;
suwak->nastepny->nastepny = pomoc;
pomoc->poprzedni=suwak->nastepny;
suwak->nastepny->u.wartosc = suwak->u.wartosc;
strcpy(suwak->nastepny->kontrakt, suwak->kontrakt);
suwak->u.wartosc = value;
strcpy(suwak->nastepny->kontrakt, tekst);
n=0;
} else {
suwak=suwak->nastepny;
}
}
}
}