Döngü adından da anlaşılacağı gibi bir işlemin tekrarlanması anlamına geliyor. Yazılım alanında da aynı anlamda kullanılır. C programlama dilinde 3 farklı döngü vardır. Bunlar do-while, while, for. Bu döngüler genel olarak bir çok programlama dilinde aynı şekilde kullanılırlar. Döngüleri iyi öğrenmek algoritma oluşturma yeteneğinizi geliştirir. Programlamanın önemli bir parçasıdır ve çok sık kullanılırlar. Kendinizi bu konuda geliştirmeniz daha hızlı program yazmanızı sağlar.
do-while Döngüsü
do-while döngüsü, do ve while arasında açılmış süslü parantezler arasındaki işlemler while içindeki koşul doğru olduğu müddetçe tekrarlanır. Döngüye ilk başlandığı anda koşula gelmeden do içindeki ifade birkez çalışır koşul yanlış olsa bile. while döngüsü ile arasındaki fark budur. Koşul tanımları C programlama dilinde geneldir if, while ve for için aynı koşul kuralları geçerlidir. Konuyu dağıtmamak için burada tekrarlamayacağım bu linkten if-else kurallara ulaşabilirsiniz.
Aşağıdaki örnek do-while ile yapılmış bir döngü içerisinde bir değişkenin değerini ekrana yazdırıyor ve bir arttırılıyor. Değişkenin değeri 10'dan küçük olduğu sürece döngü çalışıyor değer 10 ulaşınca döngüden çıkılıyor.
while Döngüsü
Aşağıda aynı program while döngüsü kullanılarak yapılıyor. while içindeki koşul doğru olduğu sürece döngü devam eder. Döngülerde dikkat edilmesi gereken noktalardan biri döngü koşulunun döngü içindeki işlemle değişmesidir aksi durumda sonsuz bir döngü olur ve bu özellikle istenmiyorsa program kilitlenir. Ama bazen de sonsuz bir döngü istenir örneğin while(1){ sonsuz dögü} buna bir örnektir.
for Döngüsü
For döngüsü de while benzer. for parantezleri içinde iki noktalı virgülle ayrılmış üç alan bulunur. Bunlardan ilki döngüye ilk başlandığında çalıştırılır, ikincisi ise döngünün koşuludur üçüncüsü ise her döngü sonunda çalıştırılır. Aşağıdaki örnekte for parantezinin ilk bölümünde a=0 ifadesi ile a değişkenine sıfır kaydediliyor. Koşul ise a<10 a 10'dan küçük olduğu sürece döngü devam ediyor. Üçüncü bölümde ise a++ ile a değişkeninin değeri bir arttırılıyor. Döngü içerisinde ise yalnızca printf fonksiyonu ile a değişkeninin değeri ekrana yazdırılıyor.