C dilinde döngüler: For, While, Do While döngüsüping İfadeler [Örnekler]
⚡ Akıllı Özet
C dilinde döngüler, bir kontrol koşulu yanlış olana kadar bir ifade bloğunu tekrarlar ve dil, giriş ve çıkış kontrollü tekrarlama için üç yapı sunar: while döngüsü, do-while döngüsü ve for döngüsü.

C'de Döngü Nedir?
tuvaletping C dilindeki ifadeler, belirtilen koşul yanlış olana kadar bir dizi ifadeyi birçok kez yürütür. C dilinde bir döngü iki bölümden oluşur: döngü gövdesi ve kontrol ifadesi. Kontrol ifadesi, belirtilen koşul yanlış olana kadar döngü gövdesinin yürütülmesini yönlendiren bazı koşulların birleşimidir. C döngüsünün amacı, aynı kodu belirli sayıda tekrarlamaktır.
C'de Döngü Türleri
Bir programdaki kontrol ifadesinin konumuna bağlı olarak,ping C dilindeki ifadeler iki türe ayrılır:
- Giriş kontrollü döngü
- Kontrollü döngüden çık
C dilinde giriş kontrol döngüsünde, döngünün gövdesi çalıştırılmadan önce bir koşul kontrol edilir. Buna ön kontrol döngüsü de denir.
Çıkış kontrollü bir döngüde, bir koşul döngünün gövdesi yürütüldükten sonra kontrol edilir. Buna ayrıca son kontrol döngüsü de denir.
Örnek Döngü
Kontrol koşulları iyi tanımlanmalı ve belirtilmelidir, aksi takdirde döngü sonsuz sayıda kez çalışacaktır. Çalışmayı durdurmayan ve ifadeleri belirtilen sayıda kez işleyen döngüye sonsuz döngü denir. Sonsuz döngüye ayrıca "sonsuz döngü" de denir. Sonsuz döngünün bazı özellikleri şunlardır:
- Herhangi bir fesih koşulu belirtilmemiştir.
- Belirtilen koşullar hiçbir zaman sağlanmaz.
Belirtilen koşul, döngü gövdesinin yürütülüp yürütülmeyeceğini belirler.
'C' programlama dili bize üç tür döngü yapısı sağlar:
- while döngüsü
- Do-while döngüsü
- for döngüsü
| Hayır. | Döngü tipi | Açıklama |
|---|---|---|
| 1. | Döngü sırasında | While döngüsünde, döngünün gövdesi işlenmeden önce bir koşul değerlendirilir. Bir koşul doğruysa ancak o zaman döngünün gövdesi yürütülür. |
| 2. | Do-While Döngüsü | Bir do…while döngüsünde koşul her zaman döngünün gövdesinden sonra yürütülür. Aynı zamanda çıkış kontrollü döngü olarak da adlandırılır. |
| 3. | Döngü için | For döngüsünde, başlangıç değeri yalnızca bir kez uygulanır, ardından koşul test edilir ve her yinelemeden sonra sayaç sabit bir değerle karşılaştırılır, döngü durdurulur.ping false değeri döndürüldüğünde for döngüsü. |
Döngü C'de iken
While döngüsü en basit döngü türüdür.ping Yapı. C programlama dilinde while döngüsünün sözdizimi şu şekildedir:
C'de While Döngüsünün Sözdizimi
while (condition) {
statements;
}
Giriş kontrollü bir döngüdür. While döngüsünde, döngünün gövdesi işlenmeden önce bir koşul değerlendirilir. Bir koşul doğruysa ancak o zaman döngünün gövdesi yürütülür. Döngünün gövdesi çalıştırıldıktan sonra kontrol tekrar başa döner ve koşulun doğru olup olmadığı kontrol edilir, koşul yanlış olana kadar aynı işlem yürütülür. Koşul yanlış olduğunda kontrol döngüden çıkar.
Döngüden çıktıktan sonra kontrol, döngünün hemen ardından gelen ifadelere gider. Bir döngünün gövdesi birden fazla ifadeyi içerebilir. Yalnızca bir ifade içeriyorsa süslü parantezlerin kullanılması zorunlu değildir. Gövdede tek bir ifade olsa bile küme parantezlerini kullanmak iyi bir uygulamadır.
While döngüsünde, eğer koşul doğru değilse, döngünün gövdesi bir kez bile çalıştırılmayacaktır. Birazdan göreceğimiz do while döngüsünde ise durum farklıdır.
Aşağıdaki program, C programlama örneğinde while döngüsünü göstermektedir:
#include<stdio.h> #include<conio.h> int main() { int num=1; //initializing the variable while(num<=10) //while loop with condition { printf("%d\n",num); num++; //incrementing operation } return 0; }
Çıktı:
1 2 3 4 5 6 7 8 9 10
Yukarıdaki program while döngüsünün kullanımını göstermektedir. Yukarıdaki programda while döngüsünü kullanarak 1'den 10'a kadar sayı dizisini yazdırdık.
C Programlamada While Döngüsü
- Bir işlemi başlattık. değişken "num" adında ve değeri 1 olan bir değişken oluşturduk. 1'den 10'a kadar sayı yazdıracağımız için değişken 1 değeriyle başlatılıyor. Eğer 0'dan itibaren yazdırmak istiyorsanız, başlatma sırasında 0 değerini atayın.
- Bir while döngüsünde, bir koşul (num<=10) sağladık, bu, num değeri 10 olana kadar döngünün gövdeyi çalıştıracağı anlamına gelir. Bundan sonra döngü sonlandırılacak ve kontrol, döngünün dışına çıkacaktır.
- Bir döngünün gövdesinde, sayımızı yazdırmak için bir yazdırma fonksiyonumuz ve bir döngünün yürütülmesi başına değeri artırmak için bir artırma işlemimiz vardır. Num'un başlangıç değeri 1'dir, çalıştırıldıktan sonra 2 olacak, bir sonraki çalıştırmada 3 olacaktır. Bu işlem değer 10 olana kadar devam edecek ve daha sonra seriyi konsola yazdıracak ve döngüyü sonlandıracaktır. .
'\n' biçimlendirme amacıyla kullanılır ve bu da değerin yeni bir satırda yazdırılacağı anlamına gelir.
C'de Do-While döngüsü
C'deki do…while döngüsü while döngüsüne benzer, tek fark koşulun her zaman döngünün gövdesinden sonra yürütülmesidir. Aynı zamanda çıkış kontrollü döngü olarak da adlandırılır.
C programlama dilinde do while döngüsünün sözdizimi aşağıdaki gibidir:
C'de Do-While Döngüsünün Sözdizimi
do { statements } while (expression);
While döngüsünde gördüğümüz gibi, gövde ancak ve ancak koşulun doğru olması durumunda çalıştırılır. Bazı durumlarda, koşul yanlış olsa bile döngünün gövdesini en az bir kez çalıştırmamız gerekir. Bu tür işlemler do-while döngüsü kullanılarak gerçekleştirilebilir.
Do-while döngüsünde, bir döngünün gövdesi her zaman en az bir kez yürütülür. Gövde yürütüldükten sonra, koşulu kontrol eder. Koşul doğruysa, döngünün gövdesini tekrar yürütür, aksi takdirde kontrol döngüden dışarı aktarılır.
While döngüsüne benzer şekilde, kontrol döngüden çıktığında döngünün hemen ardından gelen ifadeler çalıştırılır.
While döngüsü ile do-while döngüsü arasındaki en önemli fark, while döngüsünün başında while ifadesinin yazılmasıdır. Do-while döngüsünde while koşulu en sona yazılır ve noktalı virgül (;) ile sonlandırılır.
Aşağıdaki C döngü programı, do-while döngüsünün çalışma şeklini göstermektedir:
Aşağıda C örneğinde 2 numaralı tabloyu yazdırmak için kullanılan bir do-while döngüsü verilmiştir:
#include<stdio.h> #include<conio.h> int main() { int num=1; //initializing the variable do //do-while loop { printf("%d\n",2*num); num++; //incrementing operation }while(num<=10); return 0; }
Çıktı:
2 4 6 8 10 12 14 16 18 20
Yukarıdaki örnekte do-while döngüsünü kullanarak 2'nin çarpım tablosunu yazdırdık. Programın seriyi nasıl yazdırabildiğini görelim.
C Programlamada Do-While Döngüsü
- Öncelikle 'num' değişkenini 1 değeriyle başlattık. Daha sonra do-while döngüsü yazdık.
- Bir döngüde num değerini 2 ile çarparak seriyi yazdıracak bir yazdırma fonksiyonumuz var.
- Her artıştan sonra num değeri 1 artacak ve ekrana yazdırılacaktır.
- Başlangıçta num'un değeri 1'dir. Bir döngünün gövdesinde, yazdırma işlevi şu şekilde yürütülecektir: 2*num, burada num=1, ardından 2*1=2, dolayısıyla iki değeri yazdırılacaktır. Bu durum num değeri 10 olana kadar devam edecek. Bundan sonra döngü sonlandırılacak ve döngünün hemen ardından gelen deyim çalıştırılacaktır. Bu durumda 0 değerini döndürün.
C'deki for döngüsü
For döngüsü 'C' programlamasında daha verimli bir döngü yapısıdır. C dilinde for döngüsü sözdiziminin genel yapısı aşağıdaki gibidir:
C'de For Döngüsünün Sözdizimi
for (initial value; condition; incrementation or decrementation ) { statements; }
- For döngüsünün başlangıç değeri yalnızca bir kez gerçekleştirilir.
- Koşul, her yinelemeden sonra sayacı sabit bir değerle karşılaştıran ve test eden bir Boolean ifadesidir, durdur.ping false değeri döndürüldüğünde for döngüsü.
- Arttırma/azaltma, sayacı ayarlanan değer kadar artırır (veya azaltır).
Aşağıdaki program C programlama örneğinde for döngüsünü göstermektedir:
#include<stdio.h> int main() { int number; for(number=1;number<=10;number++) //for loop to print 1-10 numbers { printf("%d\n",number); //to print the number } return 0; }
Çıktı:
1 2 3 4 5 6 7 8 9 10
Yukarıdaki program for döngüsünü kullanarak 1'den 10'a kadar olan sayı serilerini yazdırmaktadır.
C Programlamada Döngü İçin
- Değerleri saklamak için int veri tipinde bir değişken tanımladık.
- For döngüsünde başlatma kısmında değişken numarasına 1 değerini atadık. Koşul kısmında koşulumuzu ve ardından arttırma kısmını belirttik.
- Bir döngünün gövdesinde, sayıları konsolda yeni bir satıra yazdırmak için bir yazdırma işlevimiz vardır. Sayıda saklanan bir değerimiz var, ilk yinelemeden sonra değer artırılacak ve 2 olacak. Artık sayı değişkeni 2 değerine sahip. Koşul yeniden kontrol edilecek ve koşul doğru olduğundan döngü yürütülecek, ve ekrana iki tane yazdıracak. Değişkenin değeri 10 olana kadar bu döngü işlemeye devam edecektir. Daha sonra döngü sonlandırılacak ve ekrana 1-10 arası bir seri yazdırılacaktır.
C'de for döngüsü, her bölümde virgülle ayrılmış birden fazla ifadeye sahip olabilir.
Örneğin:
for (x = 0, y = num; x < y; i++, y--) { statements; }
Ayrıca noktalı virgül ekleyerek başlangıç değer ifadesini, koşulunu ve/veya artışını atlayabiliriz.
Örneğin:
int i=0; int max = 10; for (; i < max; i++) { printf("%d\n", i); }
Döngülerin, bir dış döngü ve bir iç döngünün olduğu yerde de iç içe olabileceğine dikkat edin. Dış döngünün her yinelemesinde iç döngü tüm döngüsünü tekrarlar.
C programlamada, iç içe for döngüsünü kullanarak çarpım tablosunu çıktı olarak veren, birden fazla koşullu for döngüsü örneğini ele alalım:
#include <stdio.h> int main() { int i, j; int table = 2; int max = 5; for (i = 1; i <= table; i++) { // outer loop for (j = 0; j <= max; j++) { // inner loop printf("%d x %d = %d\n", i, j, i*j); } printf("\n"); /* blank line between tables */ }}
Çıktı:
1 x 0 = 0 1 x 1 = 1 1 x 2 = 2 1 x 3 = 3 1 x 4 = 4 1 x 5 = 5 2 x 0 = 0 2 x 1 = 2 2 x 2 = 4 2 x 3 = 6 2 x 4 = 8 2 x 5 = 10
For döngülerinin iç içe kullanımı herhangi bir seviyeye kadar yapılabilir. Kodun okunabilirliğini sağlamak için iç içe döngüler yeterince girintili olmalıdır. 'C' dilinin bazı sürümlerinde iç içe kullanım 15 döngüyle sınırlıdır, ancak bazılarında daha fazlasına izin verilir.
İç içe döngüler daha sonraki derslerde göreceğimiz dizi uygulamalarında çoğunlukla kullanılır.
C dili, üç döngü türünün ötesinde, bir döngünün içten nasıl çalıştığını değiştiren iki ifade daha sunar.
C'de Break İfadesi
Break ifadesi esas olarak aşağıdaki durumlarda kullanılır: anahtar bildirimiAynı zamanda anında durdurmak için de faydalıdır.ping bir döngü.
Bir while döngüsünden çıkmak için break komutunu kullanan aşağıdaki programı ele alalım:
#include <stdio.h> int main() { int num = 5; while (num > 0) { if (num == 3) break; printf("%d\n", num); num--; }}
Çıktı:
5 4
C'de İfadeye Devam Et
Bir sonraki yinelemeye atlamak ancak döngüde kalmak istediğinizde devam ifadesini kullanmalısınız.
Örneğin:
#include <stdio.h> int main() { int nb = 7; while (nb > 0) { nb--; if (nb == 5) continue; printf("%d\n", nb); }}
Çıktı:
6 4 3 2 1
Yani 5 değeri atlanıyor.
Hangi Döngü Seçilecek?
Bir döngünün seçimi bir programcı için her zaman zor bir iştir, bir döngü seçmek için aşağıdaki adımları izleyin:
- Sorunu analiz edin ve ön test veya son test döngüsü gerektirip gerektirmediğini kontrol edin.
- Ön test gerekiyorsa, while veya for döngüsü kullanın.
- Son test gerekiyorsa do-while döngüsü kullanın.




