Programiranje I

Beleˇske za predavanja

Smer

Informatika

Matematiˇcki fakultet, Beograd

Predrag Janiˇ

ci´

c i Filip Mari´

c

2010.

2

background image

4

SADR ˇ

ZAJ

II

Jezik C

75

5

O programskom jeziku C

77

5.1

Standardizacija jezika

. . . . . . . . . . . . . . . . . . . . . . . .

77

6

Prvi programi

79

6.1

Program “Zdravo!”

. . . . . . . . . . . . . . . . . . . . . . . . . .

79

6.2

Program koji ispisuje kvadrat unetog celog broja

. . . . . . . . .

81

6.3

Program koji izraˇ

cunava rastojanje izme

d

u taˇ

caka

. . . . . . . .

81

6.4

Program koji ispituje da li je uneti broj paran

. . . . . . . . . . .

82

7

Promenljive, tipovi, deklaracije, operatori, izrazi

85

7.1

Promenljive i imena promenljivih

. . . . . . . . . . . . . . . . . .

85

7.2

Deklaracije

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

86

7.3

Tipovi podataka

. . . . . . . . . . . . . . . . . . . . . . . . . . .

87

7.3.1

Tip

int

. . . . . . . . . . . . . . . . . . . . . . . . . . . .

87

7.3.2

Tip

char

. . . . . . . . . . . . . . . . . . . . . . . . . . .

88

7.3.3

Tipovi

float

,

double

i

long double

. . . . . . . . . . . .

88

7.3.4

Logiˇ

cki tip podataka

. . . . . . . . . . . . . . . . . . . . .

89

7.3.5

Operator sizeof

. . . . . . . . . . . . . . . . . . . . . . . .

89

7.4

Brojevne konstante i konstantni izrazi

. . . . . . . . . . . . . . .

89

7.5

Operatori i izrazi

. . . . . . . . . . . . . . . . . . . . . . . . . . .

91

7.5.1

Operator dodele

. . . . . . . . . . . . . . . . . . . . . . .

91

7.5.2

Aritmetiˇ

cki operatori

. . . . . . . . . . . . . . . . . . . . .

92

7.5.3

Relacioni i logiˇ

cki operatori

. . . . . . . . . . . . . . . . .

93

7.5.4

Bitovski operatori

. . . . . . . . . . . . . . . . . . . . . .

95

7.5.5

Sloˇ

zeni operatori dodele

. . . . . . . . . . . . . . . . . . .

96

7.5.6

Operator uslova

. . . . . . . . . . . . . . . . . . . . . . . .

97

8

Naredbe i kontrola toka

99

8.1

Naredba izraza

. . . . . . . . . . . . . . . . . . . . . . . . . . . .

99

8.2

Sloˇ

zene naredbe i blokovi

. . . . . . . . . . . . . . . . . . . . . . 100

8.3

Naredba

if-else

. . . . . . . . . . . . . . . . . . . . . . . . . . . 100

8.4

Konstrukcija

else-if

. . . . . . . . . . . . . . . . . . . . . . . . 101

8.5

Naredba

if-else

i operator uslova

. . . . . . . . . . . . . . . . . 102

8.6

Naredba

switch

. . . . . . . . . . . . . . . . . . . . . . . . . . . 102

8.7

Petlja

while

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104

8.8

Petlja

for

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104

8.9

Petlja

do-while

. . . . . . . . . . . . . . . . . . . . . . . . . . . 105

8.10 Naredbe

break

i

continue

. . . . . . . . . . . . . . . . . . . . . 106

9

Struktura programa i funkcije

109

9.1

Primeri definisanja i pozivanja funkcije

. . . . . . . . . . . . . . . 109

9.2

Definicija funkcije

. . . . . . . . . . . . . . . . . . . . . . . . . . . 110

9.3

Povratna vrednost funkcije

. . . . . . . . . . . . . . . . . . . . . 110

9.4

Argumenti funkcije

. . . . . . . . . . . . . . . . . . . . . . . . . . 111

SADR ˇ

ZAJ

5

9.5

Prenos argumenata

. . . . . . . . . . . . . . . . . . . . . . . . . . 111

9.6

Deklaracija funkcije

. . . . . . . . . . . . . . . . . . . . . . . . . 112

10 Nizovi i niske

115

10.1 Deklaracija niza

. . . . . . . . . . . . . . . . . . . . . . . . . . . . 116

10.2 Nizovi kao argumenti funkcija

. . . . . . . . . . . . . . . . . . . . 117

10.3 Niske

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118

10.4 Standardne funkcije za rad sa niskama

. . . . . . . . . . . . . . . 119

11 Pretprocesor

125

11.1 Ukljuˇ

civanje datoteka zaglavlja

. . . . . . . . . . . . . . . . . . . 125

11.2 Makro zamene

. . . . . . . . . . . . . . . . . . . . . . . . . . . . 126

11.3 Uslovno prevo

d

enje

. . . . . . . . . . . . . . . . . . . . . . . . . . 128

12 Konverzije tipova

131

12.1 Eksplicitne konverzije

. . . . . . . . . . . . . . . . . . . . . . . . 132

12.2 Konverzije pri dodelama

. . . . . . . . . . . . . . . . . . . . . . . 132

12.3 Implicitne konverzije u aritmetiˇ

ckim izrazima

. . . . . . . . . . . 133

12.4 Konverzije tipova argumenata funkcije

. . . . . . . . . . . . . . . 134

13 Izvrˇ

sno okruˇ

zenje i organizacija memorije

137

13.1 Organizacije memorije dodeljene programu

. . . . . . . . . . . . 137

13.2 Segment koda

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137

13.3 Segment podataka

. . . . . . . . . . . . . . . . . . . . . . . . . . 138

13.4 Stek segment

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138

13.5 Ilustracija funkcionisanja izvrˇ

snog okruˇ

zenja: rekurzija

. . . . . . 139

14 Doseg i ˇ

zivotni vek

141

14.1 Doseg

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141

14.2 ˇ

Zivotni vek

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143

14.3 Lokalne automatske promenljive

. . . . . . . . . . . . . . . . . . 143

14.4 Lokalne statiˇ

cke promenljive

. . . . . . . . . . . . . . . . . . . . . 143

14.5 Globalne statiˇ

cke promenljive i funkcije

. . . . . . . . . . . . . . 144

15 Pokazivaˇ

ci

147

15.1 Pokazivaˇ

ci i adrese

. . . . . . . . . . . . . . . . . . . . . . . . . . 147

15.2 Pokazivaˇ

ci i argumenti funkcija

. . . . . . . . . . . . . . . . . . . 149

15.3 Pokazivaˇ

ci i nizovi

. . . . . . . . . . . . . . . . . . . . . . . . . . 150

15.4 Pokazivaˇ

cka aritmetika

. . . . . . . . . . . . . . . . . . . . . . . . 151

15.5 Karakterski pokazivaˇ

ci i funkcije

. . . . . . . . . . . . . . . . . . 153

15.6 Pokazivaˇ

ci na funkcije

. . . . . . . . . . . . . . . . . . . . . . . . 155

16 Viˇ

sedimenzionalni nizovi i nizovi pokazivaˇ

ca

159

16.1 Viˇ

sedimenzionalni nizovi

. . . . . . . . . . . . . . . . . . . . . . . 159

16.2 Odnos viˇ

zedimenzionalnih nizova i nizova pokazivaˇ

ca

. . . . . . . 160

background image

SADR ˇ

ZAJ

7

B Reˇ

senja zadataka

215

Želiš da pročitaš svih 243 strana?

Prijavi se i preuzmi ceo dokument.

Ovaj materijal je namenjen za učenje i pripremu, ne za predaju.

Slični dokumenti