comp_eng | | Tarih: 16.05.2006, 00:43 Mesaj konusu: i.t.ü programlamaya giriş ders notları(c) | |
| arkadaşlar h.turgut uyar tarafından hazırlanan çok kapsamlı bir kitap c ile ilgileniyorsanız kaçırmayın....
çindekiler
1 giri³ 1
1.1 veriler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.1.1 taban tipler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.1.2 kaytlar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.1.3 diziler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.2 algoritmalar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.2.1 algoritmalarn kar³la³trlmas . . . . . . . . . . . . . . . . . . . . . . . 11
1.3 blok yapl programlama . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.4 soyutlama . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.5 giri³ / çk³ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
1.6 program geli³tirme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
1.6.1 programlarn de§erlendirilmesi . . . . . . . . . . . . . . . . . . . . . . . 23
1.6.2 programlarn çal³trlmas . . . . . . . . . . . . . . . . . . . . . . . . . 24
1.6.3 kitaplklar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
1.6.4 standartlar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
1.6.5 derleme a³amalar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
2 c diline giri³ 29
2.1 simler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
2.2 de§erler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
2.3 de§i³kenler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
2.4 veri tipleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
2.5 de§i³mezler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
2.6 aritmetik deyimler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
2.7 tip dönü³ümleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
2.8 artrma / azaltma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
2.9 matematik kitapl§ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
2.10 giri³ / çk³ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
v
çındekıler vi
3 ak³ denetimi 45
3.1 ko³ul deyimleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
3.1.1 kar³la³trma ³lemleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
3.1.2 mantksal ³lemler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
3.2 seçim . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
3.2.1 ko³ullu ³leç . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
3.3 çoklu seçim . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
3.4 ko³ul denetiminde yineleme . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
3.5 döngü denetimi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
3.6 sayaç denetiminde yineleme . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
4 türetilmi³ veri tipleri 73
4.1 numaralandrma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
4.2 yaplar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
5 diziler 85
5.1 tek boyutlu diziler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
5.2 katarlar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
5.3 katar kitapl§ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
5.4 çok boyutlu diziler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
5.5 ba³vurular . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
6 fonksiyonlar 103
6.1 fonksiyon bildirimi ve tanm . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
6.2 parametre aktarm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
6.3 yerel de§i³kenler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
6.4 genel de§i³kenler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
6.5 ba³vuru aktarm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
6.6 giri³ parametreleri üzerinden de§er döndürme . . . . . . . . . . . . . . . . . . 116
6.7 dizilerin fonksiyonlara aktarlmas . . . . . . . . . . . . . . . . . . . . . . . . . 117
6.8 e³ simli fonksiyonlar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
6.9 varsaylan parametreler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
vii çındekıler
7 ³aretçiler 127
7.1 ³aretçi tipinden de§i³kenler . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
7.2 bellek yönetimi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
7.3 ³aretçi - dizi li³kisi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
7.4 ³aretçi tipinden parametreler . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
7.5 statik de§i³kenler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
7.6 adres aktarm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
8 giri³-çk³ 141
8.1 çk³ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
8.2 giri³ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
8.3 ana fonksiyona parametre aktarma . . . . . . . . . . . . . . . . . . . . . . . . 146
8.4 dosyalar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
8.4.1 dosya açma - kapama . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
8.4.2 dosyada okuma-yazma . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
8.5 standart giri³ / çk³ birimleri . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
8.6 hata letileri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
8.7 katarlar ile giri³-çk³ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
8.8 kili dosyalar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
9 öni³lemci 153
9.1 makrolar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
9.2 projeler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154
10 ba§lantl listeler 163
10.1 yaplara ³aretçiler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
11 rekürsiyon 171
a simgelerin kodlanmas 177
b unix'de program geli³tirme 179
b.1 yardmc belgeler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
b.2 derleme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
b.3 editörler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182
b.4 hata ayklayclar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182
b.5 ba³arm nceleme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183
-----------------------------------------------------
|
|