l7z1 i do głównego pliku projektu
skopiować zawartość pliku źródłowego zad1.copisz_przedmiot)?opisz_przedmiot nie wykona
się poprawnie? Wprowadzić odpowiednią modyfikację zapewniającą poprawność
tej funkcji.print_koszyk
(linia 99) i porównać go ze sposobem wywołania
funkcji dodaj_koszyk (linie 95-97). Dlaczego koszyk
klienta jest niezgodny z oczekiwaniami?
(sprawdzić implementację funkcji dodaj_przedmiot, linie 66-69).dodaj_przedmiot zawsze wykona się
poprawnie? Wprowadzić odpowiednią modyfikację zapewniającą poprawność
tej funkcji.zaplac, dzięki której
sprawdzimy, czy klienta stać na same owoce.String przechowującą ciąg znaków o
dowolnym rozmiarze oraz informację o jego obecnej długości.
struct String utworz_string(char* zrodlo)
void usun_string(struct String string)
które umożliwią odpowiednio: utworzenie struktury String
wraz z zawartością oraz usunięcie zawartości tej struktury. W
implementacji wykorzystać funkcje malloc
oraz free (dlaczego zwykłe przypisanie wskaźników jest
niebezpieczne?)
nazwa struktury Przedmiot
na String.main skopiować strukturę (operatorem
przypisania =) nazwę przedmiotu do oddzielnej zmiennej:
struct String nazwa_banana = banan.nazwa;
Następnie zamienić pierwszą literę tego ciągu znaków na małą
literę b. Czy nazwa przedmiotu banan zmieniła
się?
main skopiować strukturę
przedmiotu banan przy użyciu operatora przypisania:
struct Banan kopia_banana = banan;
Następnie zamienić pierwszą literę ciągu
znaków kopia_banana.kolor[0] na dużą literę
Z. Czy nazwa koloru przedmiotu banan zmieniła
się?
typedef struct Complex {
float r, i;
} C;
C dodaj(C a, C b);
C pomnoz(C a, C b);
C pomnoz_skalarnie(C *v, C *w, int dlugosc);
Iloczynem skalarnym dwóch wektorów jest suma wyników mnożenia
odpowiadających sobie składowych wektora. Na przykład:
[2, j, 1] [1 ] = 2*1 + j*j3 + 1*4 = 3
|j3|
[4 ]
Przykładowy wynik działania programu:
Podaj dlugosc wektora: 3
Podaj skladowe wektora A: 1+j0 2+j2 0+j3
Podaj skladowe wektora B: 2+j1 1+j0 0+j3
Iloczyn skalarny wynosi: -5+j3