390 likes | 795 Views
Programski jezik C. C. C jezik (autor Denis M. Ritchie , 1973. godine) je jezik opće namjene, velikih mogućnosti, u načelu neovisan o računalu na kojem se izvodi
E N D
C C jezik (autor Denis M. Ritchie, 1973. godine) je jezik opće namjene, velikih mogućnosti, u načelu neovisan o računalu na kojem se izvodi postigao velik uspjeh jer su njime razvijani različiti operacijski sustavi i namjenski programi (programi namijenjeni rješavanju određenih zadataka izravno zanimljivih korisniku)
Programiranje u C-u program se piše u tekst – editoru (jednostavna verzija programa za upis teksta) i tako se stvara datoteka izvornog koda nastavak za datoteku izvornog koda u C-u: .c
prevoditelj (engl. compiler) – prevodi izvorni kod na jezik koji računalo razumije i radi datoteku objektnog koda nastavak za datoteku objektnog koda u C-u: .obj linker – tvori konačnu programsku datoteku nastavka .exe
umjesto void ispred main može i int, a na kraj ondareturn 0 Funkcija za ispis:printf( ); • ispis teksta – unutar navodnika Primjer 1: ispis rečenice Dobar dan! printf(“Dobar dan!”);
ispis varijabli i funkcija: printf(funkcija); Primjer 2: ispis sume brojeva 2 i 7 printf(2+7); • kombinirani ispis (tekst i funkcije): printf(“tekst”,funkcija);
Zadatak 1: Napiši program koji ispisuje Suma brojeva 10 i 20 je 30 Uputa: 30 neka program izračuna, a ostalo neka bude upisani tekst. Rješenje:
ispis: nadopuna koda: %d -> označava da se na tom mjestu mora nalaziti broj (d označava cijeli broj) \n -> prijelaz u novi red
podatke u programu dijelimo na: • varijable - podaci čije se vrijednosti tijekom izvođenja programa mijenjanju • konstante - podaci čije se vrijednosti ne mogu mijenjati • identifikator – ime varijable, konstante ili funkcije (ne smije biti ključna riječ) Definiranje konstanti #defineime_konstantevrijednost
Primjer 3: definicija konstante pi #definepi 3.14 Zadatak 2: Napiši program koji ispisuje Pi je iracionalan broj i vrijednost mu je 3.14 Uputa: 3.14 mora biti pozvan kao konstanta
Funkcija za upis: scanf(“formati”, &varijable); Formati varijabli: int – cijeli broj float – realni broj char – znakovni niz
deklaracija varijabli: format varijabla; ili format varijabla1, varijabla 2, …; ili format varijabla=vrijednost;
Primjer 3: nekoliko definiranih varijabli int a, b; float g, h; Primjer 4: funkcija za unos int a; scanf(“%d”, &a);
Zadatak 2: Napišite program koji od korisnika traži unos 2 cijela broja i ispisuje njihovu sumu. Rješenje:
R: 7 Matematičke funkcije u C-u: • Zbrajanje: + • Oduzimanje: - • Množenje: * • Dijeljenje: / • Ostatak pri cjelobrojnom dijeljenju: % • Korijen: sqrt Zadatak 3: Kolika je vrijednost idućeg izraza? 2*3+4/2-7%2
Dev C++ Ikona programa jedna od poveznica za preuzimanje programa: http://download.cnet.com/Dev-C/3000-2069_4-12686.html
Traka izbornika Prozor za uređivanje teksta Prozor za poruke kompilatora Alatna traka
prije kompajliranja potrebno je spremiti datoteku kompajliranje: način: način: način: Alt + F9 Ctrl + F9 način: F9
neke od opcija za zaustavljanje programa: scanf(“%%”); ili system(“PAUSE"); piše se prije return 0;
Naredba pridruživanja kod poziva a+b, program svaki put ponovno računa tu sumu, da bi se to izbjeglo koristi se pridruživanje Naredbom pridruživanja varijablama se zadaju ili mijenjaju vrijednosti. operator pridruživanja u C-u je = (on vrijednost izraza s desne strane pridružuje izrazu s lijeve strane jednakosti)
opći oblik naredbe za pridruživanje: varijabla=izraz; Primjer: int a, b, c; c=a+b; scanf(“%d,%d”, &a, &b); printf(“Suma brojeva je: %d”, c); Zadatak: Napiši program koji od korisnika traži unos 2 broja i ispisuje njihov umnožak. (Koristi pridruživanje!)
varijable mogu biti: • globalne – deklariraju se izvan svih funkcija i mogu se koristiti u cijelom programu • lokalne – deklariraju se na početku funkcije ili u bloku naredbi • blok naredbi – niz od nekoliko naredbi grupiranih u jednu logičku cjelinu uokvirenu s { i }
4, 6, 2,12 Zadatak: Što će se ispisati nakon izvođenja ovog programa?
30 operator pridruživanja može se kombinirati s aritmetičkim operatorima Primjer: a+=2 je isto što i a=a+2 a-=2 je isto što i a=a-2 a*=2 je isto što i a=a*2 … Zadatak: Zapiši izraz x*=(y+z)+3 u cijelosti, a zatim izračunaj vrijednost varijable x ako je x=3, y=2 i z=5.
Operatori inkrement i dekrement inkrement: ++ (značenje: uvećaj za jedan) dekrement: -- (značenje: umanji za jedan) oba se mogu pisati ispred ili iza varijable Primjer: x=x+1 je isto što i x++, odnosno ++x Ako je x=10 onda je x++=11 i ++x=11.
Ako se operator ++ (--) nalazi ispred varijable, tada se vrijednost varijable najprije poveća (umanji) za jedan, a zatim koristi. Ako se operator ++ (--) nalazi iza varijable, tada se vrijednost varijable najprije koristi, a zatim poveća (umanji) za jedan. Primjer: x=1 x=1 y=++x y=x++ x=x+1=2 y=1 y=2 x=x+1=2
Matematičke funkcije • u program se dodaje: #include<math.h> • neke od funkcija: • abs(x) – apsolutna vrijednost • exp(x) – eksponencijalna funkcija • sqrt(x) – drugi korijen • pow(x,y) – računa vrijednost x na y
Zadatak: Napiši program koji od korisnika traži da unese realni i imaginarni dio kompleksnog broja, a zatim ispiše modul tog broja.
zapisivanje komentara u kodu: • /* komentar */ • ako želimo ograničiti broj decimala koje se ispisuju, na primjer dvije: %.2f
Relacijski operatori koriste se kada je potrebno odrediti u kakvom su odnosu dvije vrijednosti
1 (true) • 0 (false) • 0 • 1+5=6 u mješovitim izrazima najprije se izvršavaju aritmetičke operacije, a nakon toga se ti izrazi uspoređuju (relacijski operatori imaju niži prioritet od aritmetičkih) Vrijednost izraza? 2<3 6!=6 5=5+4 (12>5)+5
Logički operatori u C-u postoje tri logičke operacije za koje su definirani logički operatori po prioritetu:
Zadatak: • Zapiši simbolima: • x različito od y x!=y • (x ili y) različito od z (x||y) != z • (x i y) manje jednako od (y ili z) (x&&y) <= (y||z) • (x manje od y) ili (x veće od z) (x<y) || (x>z)