08.11.2014 Views

c_kitap

c_kitap

c_kitap

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

C ve Sistem Programcıları Derneği - C Ders Notları - Necati Ergin<br />

}<br />

for (;;) {<br />

if (i == 100)<br />

break;<br />

printf("%d ", i);<br />

i++;<br />

}<br />

return 0;<br />

Şimdi de, aşağıdaki döngü deyiminin yürütülmesiyle ekrana ne yazdırılacağını kestirmeye<br />

çalışın:<br />

#include <br />

int main()<br />

{<br />

double d;<br />

for (d = 1.5; d < 3,0; d += 0.1)<br />

printf("%lf ", d);<br />

}<br />

return 0;<br />

Ekrana hiçbir şey yazılmaz! Döngünün kontrol ifadesinin d < 3,0 olduğunu görüyorsunuz.<br />

Gerçek sayı değişmezi yazarken '.' yerine yanlışlıkla virgül karakteri kullanılmış. Bu<br />

durumda virgül işlecinin ürettiği değer, ikinci terim olan 0 değeridir. Kontrol ifadesi yanlış<br />

olarak yorumlanır böylece döngü gövdesindeki deyim hiç yürütülmez.<br />

n Kez Dönen for Döngüleri<br />

n 0'dan büyük bir tamsayı olmak üzere, aşağıdaki döngülerden hepsi n kez döner.<br />

for (i = 0; i < n; ++i)<br />

for (i = 1; i = 0; --i)<br />

for (i = n; i > 0; --i)<br />

for Döngülerinde continue Deyiminin Kullanımı<br />

Bir döngünün gövdesi içinde continue deyiminin kullanılması ile, gövde içinde geriye<br />

kalan deyimlerin atlanarak döngünün bir sonraki turuna geçilir. for döngüsü gövdesi<br />

içinde continue deyimi ile karşılaşıldığında, programın akışı for ayracının üçüncü ifadesine<br />

gelir ve bu ifade ele alınır.<br />

Döngü Değişkeninin Bayrak Amaçlı Kullanılması<br />

Bazı uygulamalarda, for döngüsünün döngü değişkeni, bir bayrak görevi de görür. Bir for<br />

döngüsü içinden, belirli bir koşul oluştuğunda çıkılması gereksin:<br />

for (i = 0; i < 100; ++i)<br />

if (is_valid(i))<br />

break;<br />

Yukarıdaki döngü deyiminin çalıştırılması sonucunda iki farklı durum söz konusudur. Eğer<br />

döngünün gövdesinde break deyimi yürütülürse, yani herhangi bir i değeri için is_valid<br />

işlevi sıfır dışı bir değere geri dönerse, döngü çıkışında i değişkeninin değeri, 100'den<br />

152/529

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!