PRI, laboratorium 7
Zakres materiału: Złożone struktury danych – lista jednokierunkowa. (5 pkt)
Zadanie 1. Lista jednokierunkowa.
- W katalogu lab7 utworzyć nowy projekt zad1 i do głównego pliku projektu skopiować
zawartość pliku źródłowego
zad1.c
.
- Zapoznać się z kodem programu i odpowiedzieć na następujące pytania:
- W funkcji dodaj_do_listy i skasuj_wartosc_z_listy pojawia się instrukcja
ostatni->nastepny = NULL;. Dlaczego jest ona potrzebna?
- Jak zadziała funkcja skasuj_wartosc_z_listy jeżeli w liście będzie więcej niż
jeden element o podanej wartości?
- W jaki sposób przekazywany jest argument poprzedni do funkcji przeszukaj_liste?
- W programie pamięć zarezerowawana podczas tworzenia listy nie jest zwalniana. Napisać
funkcję usun_liste, która usuwą całą listę.
Zadanie 2. Usuwanie listy
Usunąć wszystkie elementy alokowane na liście - napisać odpowiednią funkcję wykonywaną na końcu programu.
Zadanie 3. Lista dwukierunkowa
Zmodyfikować program z Zad1. tak, aby utworzyć listę dwukierunkową.