Dwukierunkowa lsita- wywolanie funkcji

esberitox
Użytkownik
Użytkownik
Posty: 49
Rejestracja: 14 gru 2006, o 15:35
Płeć: Mężczyzna
Lokalizacja: wawa
Podziękował: 8 razy

Dwukierunkowa lsita- wywolanie funkcji

Post autor: esberitox »

Mam takie zadanko z kolosa C, i prosze o rozwiazanie i wytlumaczenie

W oparciu o podane definicje utworzone liste, której początek jest wskazywany przez zmienną globalną pocz. i zawierajaco kolejno elementy z nastepujacymi wartosciami pola nazwa nazwa:
"ABCD", "EFG", "JK", "N"
Co zostanie wypisane w wyniku wywolania pisz(pocz); ?

Kod: Zaznacz cały

typedef struct wezel {
 char* nazwa;
 struct wezel*nastepny;
}*lista;

lista pocz;

void pisz(lista p)
{
static int i=1;
if(p->nastepny){
pisz(p->nastepny);
++i;
}
if (i<strlen(p->nazwa))
printf("%lc", *(p->nazwa+i--));
else
printf("*STOP*");
}
ODPOWIEDZ