Temat11








PRG2 - Temat 11


C-struktury

 
Zadanie 32 (5p)

Zaprojektować 2 struktury: Book - opisującą
książki
i
List - reprezentującą półkę - jednokierunkową listę
książek.
Polami identyfikującymi książkę są sygnatura, tytuł, imię i nazwisko
autorów
oraz wskaźnik do następnej książki na półce, zaś półka jest
identyfikowana
przez wskaźnik do swojej pierwszej książki oraz ilość książek na pólce.

Zrealizować następujące polecenia, o przykładowych sygnaturach:

a. List*  list()
- utworzy pustą listę, Book* book(int sygn, char* author, char*
title, Book* next) - utworzy nową ksiązkę z składowymi podanymi
jako parametry,
b. List* 
push(List* s, Book* b) - dodaje książkę b
(jeśli jej nie było wcześniej) na początek listy s
i zwraca zmodyfikowaną s,

c. List*  inject(List*
s, Book* b) - dodaje książkę b (jeśli jej
nie było wcześniej) na
koniec listy s i zwraca zmodyfikowaną s,

d. List*  insert(List*
s, Book* b, int pos) - dodaje do listy s książkę b (jeśli
jej nie
było wcześniej) na pozycji pos
(licząc od 0) i zwraca zmodyfikowaną s,

e. List*  del(List* s,
int pos) - usuwa z listy s
książkę na pozycji pos i zwraca zmodyfikowaną s,

f. List*  rem(List*
s, int n) - usuwa z listy s
książkę o sygnaturze n i zwraca zmodyfikowaną s,

g. Book*  locate(List*
s, int n) - zwraca wskaźnik do książki
o sygnaturze n z listy s, lub NULL,
jeśli takiej książki nie ma na liście,

h. Book* 
retrieve(List* s, int pos) - zwraca wskaźnik do
książki z listy s na pozycji pos
(licząc
od 0), lub NULL, jeśli takiej książki nie ma na liście,
i. void 
printBook(Book* b) - wypisuje informacje o książce b,
j. void  printLR(List*
s) - wypisuje informacje o wszystkich
książkach z listy s, w kolejności od lewej do prawej,

k. void 
printRL(List* s) - wypisuje informacje o wszystkich
książkach z listy s w kolejności od prawej do lewej.

Napisać funkcję główną do testowania działania w/w funkcji.
 

 








Wyszukiwarka

Podobne podstrony:
temat15
TEMAT117
Temat12
TEMAT121
wynik2 temat1 GLONASS
Temat11
temat1 110821101246
TEMAT106
TEMAT115
TEMAT18
TEMAT111
temat13
temat12
TEMAT114
Temat15 rozwiazania
temat12
TEMAT108
TEMAT125

więcej podobnych podstron