Witam, mam problem z utworzeniem listy dynamicznej dwukierunkowej i utworzenia programu w taki sposób aby wczytywał dane z pliku tekstowego i sortował je w trakcie wykonania programu alfabetycznie <rosnąco>.
Mam program ale działa on na liscie jednokierunkowej :/, nie wiem jak sie do tego zabrać mowiąc szczerze dlatego prosze o pomoc fachowców
#include <stdio.h>
#include <stdlib.h>
int main(){
FILE *inFp;
char inFilename[15];
struct blok{
char slowo[15];
blok *nast;
};
struct blok *wsk,*usuw,*glowa=NULL;
printf("Nazwa pliku z wyrazami...");
gets(inFilename);
while((inFp = fopen(inFilename, "r"))==NULL){
printf("Bledna nazwa, wprowadz ja ponownie...\n");
gets(inFilename);
}
while (!feof(inFp)){
if (glowa == NULL)
glowa = wsk = (struct blok*)malloc(sizeof(struct blok));
else{
wsk->nast = (struct blok*)malloc(sizeof(struct blok));
wsk = wsk->nast;
}
fscanf(inFp, "%s", wsk->slowo);
printf("%s\n", wsk->slowo);
wsk->nast = NULL;
}
usuw = glowa;
glowa = usuw->nast;
free(usuw);
while (wsk->nast != NULL){
wsk = wsk->nast;
usuw = wsk->nast;
wsk->nast = wsk->nast->nast;
free(usuw);
}
}
Z góry dzięki za kazdą pomoc