Start | Zajęcia 1 | Zajęcia 2 | Zajęcia 3 | Zajęcia 4 | Zajęcia 5 | Zajęcia 6 | Zajęcia 7 | Zajęcia 8 | Zajęcia 9 | Zajęcia 10 | Pliki z zajęć |
---|
Poniżej znajduje się lista plików nagłówkowych i źródłowych wraz z krótkim opisem zawartych w nich funkcji i zadeklarowanych typów, stałych, struktur, itp.
Dokładniejszy opis działania poszczególnych funkcji można znaleźć w komentarzach poprzedzających każdą funkcję w plikach źródłowych.
Tutaj znajduje się paczka zip
zawierająca wszystkie opisane pliki.
Pliki te można też skopiować z katalogu /home/grochu/jpr
po zalogowaniu się na serwerze kont studenckich ferm
wydając polecenie:
cp -r /home/grochu/jpr/ jakas_nazwa_katalogu
deklaracje | krótki opis |
---|---|
float potega(float p, int w) float rpotega(float p, int w) | oblicza wartość liczby p podniesionej do potęgi w ,wersja iteracyjna i rekurencyjna |
long silnia(int i) long rsilnia(int i); | obliczanie silni wersja iteracyjna i rekurencyjna |
int pierwsza(int liczba) | sprawdza czy dana liczba jest liczbą pierwszą |
int pierwiastki (float a, float b, float c, float *x1, float *x2) | wyznacza pierwiastki rownania kwadratowego ax2+bx+c=0 |
deklaracje | działanie |
---|---|
float *wczytaj(float *t,int n) | wczytujen liczb rzeczywistych do tablicy t[] |
void wyswietl(float *t,int n) | wyświetla n pierwszych elementów tablicy t[] |
float *odwroc(float *t,int n) | odwraca kolejność elementów w tablicy |
float srednia(float t[],int n) | oblicza wartość średnią z liczb zawartych w tablicy tab |
float odleglosc(float a[], float b[],int n) | oblicza odległość euklidesową dwóch wektorów a i b |
int maxind(float *t,int n) | szuka elementu tablicy zawierającego maksymalną wartość |
float* sort(float *t,int n) | sortuje elementy tablicy za pomocą algorytmu bąbelkowego |
float* insertsort(float *t,int n) | sortuje elementy tablicy przez wybór elementu maksymalnego |
deklaracje | działanie |
---|---|
char *czytajlinie(char *linia,int max) | wczytuje linię tekstu do tablicy o rozmiarze max |
int liczznaki(char *napis) | wyznacza długość napisu |
char *kopia(char *s1,char *s2) | kopiuje zawartość napisu s2 do tablicy s1 |
char* znajdz(char *tekst,char *wzor) | sprawdza czy ciąg wzor jest podciągiem łańcucha tekst |
deklaracje | opis |
---|---|
float ∗∗utworz_macierz(int w,int k) | tworzy dynamicznie macierz o zadanych wymiarach |
void zwolnij_macierz(float ∗∗M,int w) | zwalnia pamięć zajętą przez macierz |
float ∗∗wczytaj_macierz(float ∗∗M,int w,int k) void wyswietl_macierz(float ∗∗M,int w,int k) | wczytywanie elementów macierzy z klawiatury i wyświetlanie macierzy na ekranie |
void zapisz_macierz(FILE *p, float ∗∗M, int w, int k) | zapisuje macierz M w pliku p otworzonym do zapisu w trybie tekstowym |
float ∗∗odczytaj_macierz(FILE *p, int *w, int *k) | wczytuje macierz z pliku tekstowego |
struktury | pola |
---|---|
struct daty DATA | int dzien int miesiac int rok |
struct osoba DANE | char nazwisko[100] char imie[100] DATA data_urodzenia |
deklaracje funkcji | opis |
void wczytaj_osobe(DANE * o) | wczytuje zawartość pojedyńczej stryktury |
void wyswietl_osobe(DANE * o) | wyżwietla zawartość stryktury |
Program | Opis | Program zawiera pliki |
---|---|---|
potega | oblicza potęgę liczby rzeczywistej | fmat.c fmat.h potega.c |
silnia | oblicza silnię | fmat.c fmat.h silnia.c |
pierwsze | wypisuje liczby pierwsze | fmat.c fmat.h pierwsze.c |
pierwiastki | oblicza miejsca zerowe równania kwadratowego | fmat.c fmat.h pierwiastki.c |
srednia | oblicza srednią wartość z N podanych liczb | fmat.c fmat.h srednia.c |
odwroc | wyswietla tablicę liczb w odwrotnej kolejności | tab.c tab.h odwroc.c |
sortuj | sortuje N podanych liczb | tab.c tab.h sortuj.c |
odleglosc | wyznacza odległość euklidesową dwóch wektorów | tab.c tab.h odleglosc.c |
linie | oblicza ilość znaków w każdej linii tekstu | str.c str.h linie.c |
grep | szuka wzorca w podanym tekście | str.c str.h grep.c |
macierz1 | wczytuje i wyświetla macierz o podanych wymiarach | macierz.c macierz.h mac1.c |
macierz2 | zapisuje macierze do pliku tekstowego | macierz.c macierz.h mac2.c str.c str.h |
macierz3 | tworzy macierz wczytaną z pliku tekstowego | macierz.c macierz.h mac3.c str.c str.h |
baza | demonstracja prostej bazy danych | baza.c
baza.h str.c str.h bazadanych.c |
W systemie Linux kompilację programu w języku C przeprowadzamy wydając w konsoli polecenie cc
i podając jako argumenty listę plików źródłowych niezbędnych do utworzenia pliku wykonywalnego.
Na przykład aby skompilować program potega wydajemy polecenie:
cc potega.c funckje.c -o potega
Program uruchamiamy podając jego nazwę, np:
./potega
Jeżeli program wykorzystuje funkcje z biblioteki matematycznej math.h
wówczas podczas kompilacji należy dodać opcję -lm
, np:
cc -lm odleglosc.c tab.c -o odleglosc