Diğer 10 soru

Nesneye Yönelik Programlama Ünite 3

Kaynak: https://lolonolo.com/2022/08/11/nesneye-yonelik-programlama-unite-3/

📖 Konu özeti (sınav öncesi tekrar)

Aritmetik İşlemler, Program Akış Ve Kontrol Yapıları

Aritmetik İşlemler, Program Akış Ve Kontrol Yapıları

10 soru
Şıkka dokun, anında açıklamasını gör — ya da çalışma modunda tüm cevapları aç.
Soru 1
int a = 7;
a++;
Console.WriteLine(a) ;
Yukarda verilen kod bloğu çalıştırıldığında aşağıdaki çıktılardan hangisini üretir?
DDoğru cevap
Açıklama 🤖 Yapay zekâ açıklaması

a başlangıçta 7'dir ve a++ işlemiyle 1 artırılarak 8 olur. Artırma ayrı bir satırda yapıldığı için önek ya da sonek olması sonucu değiştirmez. Console.WriteLine(a) ekrana 8 yazar.

Soru 2
int a = 10;
++a;
Console.WriteLine(a++) ;
Yukarda verilen kod bloğu çalıştırıldığında aşağıdaki çıktılardan hangisini üretir?
CDoğru cevap
Açıklama 🤖 Yapay zekâ açıklaması

++a ile a 11 olur. Console.WriteLine(a++) ifadesinde sonek artırma kullanılmıştır: önce mevcut değer (11) kullanılır, sonra a 12 olur. Bu yüzden ekrana 11 yazılır.

Soru 3
int a = 7;
++a;
Console.WriteLine(++a) ;
Yukarda verilen kod bloğu çalıştırıldığında aşağıdaki çıktılardan hangisini üretir?
EDoğru cevap
Açıklama 🤖 Yapay zekâ açıklaması

++a ile a 7'den 8'e çıkar. Console.WriteLine(++a) ifadesinde önek artırma kullanılmıştır: önce artırma yapılır (a = 9), sonra bu değer kullanılır. Bu yüzden ekrana 9 yazılır.

Soru 4
int a = 7;
Console.WriteLine(++a + a++) ;
Yukarda verilen kod bloğu çalıştırıldığında aşağıdaki çıktılardan hangisini üretir?
EDoğru cevap
Açıklama 🤖 Yapay zekâ açıklaması

İfade soldan sağa değerlendirilir. ++a önce artırır, a 8 olur ve bu kısmın değeri 8'dir. Ardından a++ mevcut değeri (8) verir ve a'yı 9 yapar. Toplam 8 + 8 = 16 olur.

Soru 5
int a = 7;
Console.WriteLine(–a + a++) ;
Yukarda verilen kod bloğu çalıştırıldığında aşağıdaki çıktılardan hangisini üretir?
ADoğru cevap
Açıklama 🤖 Yapay zekâ açıklaması

Burada –a ifadesi --a (önek azaltma) anlamındadır. --a önce azaltır, a 6 olur ve bu kısmın değeri 6'dır. Ardından a++ mevcut değeri (6) verir, sonra a'yı 7 yapar. Toplam 6 + 6 = 12 olur.

Soru 6
I – Indeks tabanlı erişim sağlar.
II – for döngüsüne göre daha yavaştır.
III – for döngüsüne göre daha hızlıdır.
C# dilinde foreach in yapısı yukarda verilenden maddelerden hangisi veya hangileri doğrudur?
BDoğru cevap
Açıklama 🤖 Yapay zekâ açıklaması

foreach döngüsü elemanları indeksle değil, bir numaralandırıcı (enumerator) aracılığıyla dolaşır, bu yüzden I yanlıştır. Bu ek mekanizma nedeniyle foreach genellikle for döngüsüne göre biraz daha yavaş kabul edilir. Bu nedenle yalnız II doğrudur.

Soru 7
I – for
II – if – else
III – switch
C# dilinde yukarda verilen anahtar kelimelerden hangisi döngüler için kullanılır?
ADoğru cevap
Açıklama 🤖 Yapay zekâ açıklaması

for bir döngü yapısıdır. if-else ve switch ise karar (koşul) yapılarıdır ve kodu tekrar çalıştırmaz. C#'taki döngüler for, while, do-while ve foreach'tir.

Soru 8
C# dili için aşağıdaki verilen ifadelerden hangisi yanlıştır?
DDoğru cevap
Açıklama 🤖 Yapay zekâ açıklaması

Soru yanlış olan ifadeyi soruyor. break ifadesi tam olarak döngülerin içinde (ve switch yapısında) kullanılır ve döngüyü anında sonlandırır. Bu yüzden "break döngülerde kullanılmaz" ifadesi yanlıştır. Diğer ifadeler doğrudur; == eşitlik kontrolü yapar.

Soru 9
C# dili için aşağıdaki verilen ifadelerden hangisi yanlıştır?
CDoğru cevap
Açıklama 🤖 Yapay zekâ açıklaması

Soru yanlış olan ifadeyi soruyor. ++ operatörü yalnızca tam sayılarla sınırlı değildir; double, float, decimal ve char gibi türlerde de kullanılabilir. Örneğin double d = 1.5; d++; işleminden sonra d 2.5 olur. Diğer ifadeler doğrudur.

Soru 10
I – ! =
II – =>
III – =<
C# dilinde yukarda verilen kullanımlardan hangisi veya hangileri doğrudur?
ADoğru cevap
Açıklama 🤖 Yapay zekâ açıklaması

C#'ta "eşit değildir" karşılaştırma operatörü != biçiminde yazılır, bu yüzden I doğru kabul edilir. Büyük-eşit >=, küçük-eşit <= şeklindedir; eşittir işareti her zaman sonda yer alır. =< geçerli bir operatör değildir, => ise karşılaştırma değil lambda/ifade gövdesi operatörüdür. Bu nedenle yalnız I doğrudur.