#include <stdio.h> #include <string.h> #define MAX 256 // deklaracja typu struct osoba struct osoba { char nazwisko[MAX]; char imie[MAX]; int wiek; }; typedef struct osoba DANE; int main() { struct osoba agent; DANE student; struct osoba *wsk; strcpy(agent.nazwisko,"Bond"); strcpy(agent.imie,"James"); agent.wiek = 33; strcpy(student.nazwisko,"Kowalski"); strcpy(student.imie,"Jan"); student.wiek = 21; printf("Imie %s\nNazwisko %s\nWiek %d\n\n",agent.imie,agent.nazwisko,agent.wiek); printf("Imie %s\nNazwisko %s\nWiek %d\n\n",student.imie,student.nazwisko,student.wiek); wsk = &agent; strcpy((*wsk).nazwisko,"Kloss"); strcpy(wsk->imie,"Hans"); wsk->wiek--; printf("Imie %s\nNazwisko %s\nWiek %d\n\n",agent.imie,agent.nazwisko,agent.wiek); }
Ćwiczenia:
osoba
oraz typu DANE
do pliku nagłówkowego o nazwie baza.h
. Utwórz funkcje o nazwie wyswietl_osobe
(definicję funkcji umieść w pliku baza.c
). Funkcja wyświetla zawartość podanej struktury. Przetestuj działanie funkcji.wczytaj_osoba
wczytującą zawartość pojedynczej struktury osoba
z klawiatury. fmat.h
zadeklaruj strukturę o nazwie zespolone
zawierającą dwa pola: re
i im
. Następnie w plikach fmat.c
i fmat.h
utwórz następujące funkcje: dodawanie
- funkcja dodaje dwie liczby zespolone, iloczyn
- funkcja oblicza iloczyn dwóch liczb zespolonych, modul
- funkcja zwraca modul liczby zespolonej, argument
- funkcja zwraca argument funkcji zespolonej. Przetestuj te funkcje w przykładowym programie.data
zawierającą trzy pola: rok
, miesiąc
i dzien
(jakiego typu będą te pola?). Dodaj do struktury osoba
nowe pole o nazwie data_urodzenia
typu struct data
i uzupełnij działanie programu z zajęć tak aby umożliwiał wprowadzanie i poprawne wyświetlanie wpisów zawierających datę urodzenia podanej osoby.* przekształć bazę danych osobowych z poprzednich zajęć tak aby tablica zawierająca struktury była przydzielana dynamicznie. Na tworzymy bazę mogącą pomieścić 10 wpisów a przypadku gdy tablica zostanie całkowicie wypełniona zwiększamy jej rozmiar dwukrotnie (za pomocą funkcji realloc) * zimplementuj prostą baze danych osobowych w oparciu o listę jednokierunkową