sayfa başı

25 Şubat 2019 Pazartesi

C Çalışma Soruları – 17 (döngü deyimleri)

Necati Ergin Hocamın kendi sayfasında bulunan çalışma sorularını ve cevaplarını burada yanıtlamaya çalıştım. Sorulara buradan ulaşabilirsiniz.

Aşağıdaki C programı çalıştırıldığında bu programın çıktısı ne olur?
#include <stdio.h>
 
int main()
{
    int x = 1;
    
    while (x-- >= 1)
        while (x-- >= 0);
            printf("%d", x);
            
    return 0;
}

Yanıt:
Soruda ikinci while satırı sonunda noktalı virgül olduğunu görmek gerekir. Bu durumda printf fonksiyonu while döngülerinin dışındadır. While döngüleri bittikten sonra printf fonksiyonu çağrılır.
sağ taraf -- operatörü kullanıldığı için koşul içinde o anki x’in deri kullanılır ve daha sonra bir azaltılır. Ayrıca döngü koşulu sınanması için ilk olarak -- işleminin gerçekleşmesi gerekir. Koşul bu işlemden sonra sınanır. Her while döngüsünde -- işlemi iki defa gerçekleşir ve sonuç -3 olur.
Daha iyi anlamak için aşağıdaki kod parçası koşulabilir. While koşulu x in ilk değeri için bile sa
ğlamazken koşul şartına gelmeden önce -- işlemi gerçekleşir ve sonuç 0 olur.

   int x = 1;    
   while (x-- >= 100);
        printf("%d", x) ;

Hiç yorum yok:

Yorum Gönder

Son Ütücü