Döngüler bir program içerisinde belirli işleri defalarca yapmamızı sağlayan komut bloklarıdır. Sonsuz döngüler yapabildiğimiz gibi belirli kriterleri sağlayana kadar oluşan döngüler de yapabiliriz.
C dilinde 3 tip döngü vardır;
- while
- do-while
- for
“while” Döngüsü
1 2 3 4 |
while(şart) { komut veya komutlar; } |
While döngüsü, verilen şart doğru olduğu sürece belirtilen komutları tekrarlamak için kullanılır. While döngüsünde şart başlangıçta kontrol edilir.
1 2 3 4 5 6 7 |
int i = 0; while(i < 10) { i++; printf(lcd_putc,"\f%d .sayi",i); delay_ms(500); } |
Örnekte i adında içeriği 0 olan tam sayı değişkeni tanımlanmıştır. while döngüsü şartında i 10’dan küçük olduğu sürece döngü çalışacaktır. Döngü komutlarında i değişkeni her döngüye girişte 1 artırılmaktadır. printf komutu ile i değişkeni lcd ekranda gösterilmektedir. En son i değeri 10 olacağı için ekranda 1’den 10’a kadar olan sayılar 500 msn aralıklarla gösterilmektedir.
“do-while” Döngüsü
1 2 3 4 |
do { komut veya komutlar; }while(şart); |
do – while döngüsü while döngüsü ile aynıdır. Tek farkı döngüye bir kez girilir, şart döngü sonunda kontrol edilir. Dolayısıyla şart yanlış olsa bile döngüye 1 kez girilir.
1 2 3 4 5 6 7 |
int i = 0; do { i++; printf(lcd_putc,"\f%d .sayi",i); delay_ms(500); }while(i < 10); |
Örnekte i adında içeriği 0 olan tam sayı değişkeni tanımlanmıştır. do-while döngüsü şartında i 10’dan küçük olduğu sürece döngü çalışacaktır. Döngüye girildiği an i değer 1 olur ve ekrana yazdırılır. 500 msn beklendikten sonra şart kontrol edilir. En son i değeri 10 olacağı için ekranda 1’den 10’a kadar olan sayılar 500 msn aralıklarla gösterilmektedir.
“for” Döngüsü
1 2 3 4 |
for( başlangıç; şart; adım) { komut veya komutlar; } |
C dilinde en çok kullanılan döngüdür. Diğer döngülerden farkı başlangıç değeri, bitiş değeri ve adım miktarı tek satırda belirtilmektedir.
1 2 3 4 5 |
for(int i = 5; i < 10; i++) { printf(lcd_putc,"\f%d",i); delay_ms(1000); } |
Örnekte başlangıç olarak i değerine 5 sayısı atanmıştır. Şart i değeri 10’dan küçük olduğu sürece i değeri 1 arttırılacak ve i değeri 1 saniye aralıklarla ekranda gösterilecektir. i değeri 10 olduğu anda şart yanlış olur ve döngüden çıkar. Dolayısıyla ekranda sırayla 5’den 9’a kadar olan sayılar gösterilecektir. 10 sayısı gösterilmeyecektir.