sayfa başı

22 Şubat 2019 Cuma

C Çalışma Soruları – 11 (işleçler)

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 num = 30;
    int ival = (num > 5 ? num <= 10 ? 10 : 20 : 50);

    printf("%d\n", ival);

    return 0;
}

Yanıt: 



?: operatöründe öncelik sağdan sola olduğu görülüyor. Yani ilk olarak en sağdaki ?: işlem çözülür.

Bu bilgi ile ile ilk olarak num <= 10 ? 10 : 20 işleminin ele alınacağını görebiliriz. Koşulun doğru olmamasından dolayı buradan sonuç olarak 20 değerini alırız. En sağdaki ?: işlemi sonucunda durum num > 5 ? 20 : 50 şekline döner. Buradan da sonuç 20 elde edilir.

Hiç yorum yok:

Yorum Gönder

Son Ütücü