Switch Case C Programlama Örnekleri

Switch Case C Programlama Örnekleri

C programlama dili, kontrol yapıları açısından oldukça zengin bir dildir. Bu kontrol yapılarından biri de “switch-case” yapısıdır. Switch-case, belirli bir değişkenin değerine göre farklı kod bloklarının çalıştırılmasını sağlar. Bu yapı, özellikle birden fazla koşulun kontrol edilmesi gereken durumlarda oldukça kullanışlıdır. Bu makalede, switch-case yapısının nasıl kullanıldığını, avantajlarını ve örneklerini inceleyeceğiz.

Switch-Case Yapısının Temel Kullanımı

Switch-case yapısı, bir değişkenin farklı değerlerine göre farklı işlemler yapmak için kullanılır. Temel sözdizimi aşağıdaki gibidir:

“`c

switch (değişken) {

case değer1:

// değer1 için yapılacak işlemler

break;

case değer2:

// değer2 için yapılacak işlemler

break;

default:

// hiçbiriyle eşleşmezse yapılacak işlemler

}

“`

Burada, `değişken` ifadesi bir tamsayı veya karakter olabilir. `case` ifadeleri, değişkenin alabileceği değerleri belirtir. Her bir case bloğunun sonunda `break` ifadesi yer alır. Bu ifade, switch bloğunun sonlanmasını sağlar. Eğer `break` ifadesi kullanılmazsa, program akışı bir sonraki case bloğuna geçer (fall-through durumu).

Switch-Case Kullanımının Avantajları

1. **Okunabilirlik**: Birden fazla if-else ifadesi yerine switch-case kullanmak, kodun daha okunabilir ve düzenli olmasını sağlar.

2. **Performans**: Özellikle çok sayıda koşul varsa, switch-case yapısı genellikle daha hızlı çalışır. Çünkü derleyici, switch-case yapısını optimize edebilir.

3. **Kolay Bakım**: Yeni durumlar eklemek veya mevcut durumları değiştirmek, switch-case yapısı kullanıldığında daha kolaydır.

Örnek 1: Basit Bir Switch-Case Kullanımı

Aşağıda, kullanıcıdan bir gün numarası alarak o günün adını yazdıran basit bir switch-case örneği bulunmaktadır:

“`c

#include

int main() {

int gun;

printf(“Bir gün numarası girin (1-7): “);

scanf(“%d”, &gun);

switch (gun) {

case 1:

printf(“Pazartesi\n”);

break;

case 2:

printf(“Salı\n”);

break;

case 3:

printf(“Çarşamba\n”);

break;

case 4:

printf(“Perşembe\n”);

break;

case 5:

printf(“Cuma\n”);

break;

case 6:

printf(“Cumartesi\n”);

break;

case 7:

printf(“Pazar\n”);

break;

default:

printf(“Geçersiz gün numarası.\n”);

}

return 0;

}

“`

Bu program, kullanıcıdan bir gün numarası alır ve bu numaraya karşılık gelen günün adını ekrana yazdırır. Eğer kullanıcı geçersiz bir numara girerse, “Geçersiz gün numarası.” mesajı gösterilir.

Örnek 2: Not Hesaplama

Bir başka örnek, öğrencilerin notlarına göre harf notu hesaplamaktır:

“`c

#include

int main() {

int not;

printf(“Notunuzu girin (0-100): “);

scanf(“%d”, &not);

switch (not / 10) {

case 10:

case 9:

printf(“Harf Notu: A\n”);

break;

case 8:

printf(“Harf Notu: B\n”);

break;

case 7:

printf(“Harf Notu: C\n”);

break;

case 6:

printf(“Harf Notu: D\n”);

break;

case 5:

case 4:

case 3:

case 2:

case 1:

case 0:

printf(“Harf Notu: F\n”);

break;

default:

printf(“Geçersiz not.\n”);

}

return 0;

}

“`

Bu program, kullanıcının girdiği notu 10’a böler ve çıkan sonuca göre harf notunu belirler. Örneğin, 85 girişi “B” harf notunu verecektir.

İlginizi Çekebilir:  Android Studio ile Mobil Programlama: Kapsamlı Bir E-kitap

Örnek 3: Menü Uygulaması

Aşağıda, kullanıcıya bir menü sunarak seçimine göre farklı işlemler gerçekleştiren bir örnek bulunmaktadır:

“`c

#include

int main() {

int secim;

printf(“1. Toplama\n”);

printf(“2. Çıkarma\n”);

printf(“3. Çarpma\n”);

printf(“4. Bölme\n”);

printf(“Bir işlem seçin (1-4): “);

scanf(“%d”, &secim);

int a, b;

printf(“İlk sayıyı girin: “);

scanf(“%d”, &a);

printf(“İkinci sayıyı girin: “);

scanf(“%d”, &b);

switch (secim) {

case 1:

printf(“Sonuç: %d\n”, a + b);

break;

case 2:

printf(“Sonuç: %d\n”, a – b);

break;

case 3:

printf(“Sonuç: %d\n”, a * b);

break;

case 4:

if (b != 0) {

printf(“Sonuç: %.2f\n”, (float)a / b);

} else {

printf(“Bir sayıyı sıfıra bölemezsiniz.\n”);

}

break;

default:

printf(“Geçersiz seçim.\n”);

}

return 0;

}

“`

Bu program, kullanıcıya dört temel matematiksel işlem sunar ve kullanıcıdan iki sayı alarak seçilen işleme göre sonucu hesaplar.

SSS (Sıkça Sorulan Sorular)

1. Switch-case yapısının avantajları nelerdir?

Switch-case yapısı, okunabilirliği artırır, performansı iyileştirir ve kodun bakımını kolaylaştırır.

2. Switch-case yapısında neden break ifadesi kullanılır?

Break ifadesi, bir case bloğunun sonlandığını belirtir. Kullanılmazsa, program akışı bir sonraki case bloğuna geçer.

3. Switch-case yapısında hangi veri türleri kullanılabilir?

Switch-case yapısında genellikle tamsayı ve karakter veri türleri kullanılır.

4. Switch-case yapısı, if-else yapısına göre ne zaman tercih edilmelidir?

Birden fazla koşulun kontrol edilmesi gereken durumlarda, switch-case yapısı daha okunabilir ve düzenli bir çözüm sunar.

5. Switch-case yapısında default durumu ne işe yarar?

Default durumu, hiçbir case ile eşleşmeyen durumlar için bir yedekleme sağlar ve kullanıcıya geçersiz bir giriş yaptığında bilgi verir.

Bu makalede, C programlama dilinde switch-case yapısının nasıl kullanılacağını, avantajlarını ve örneklerini inceledik. Switch-case yapısı, programlama sürecinde oldukça faydalı bir kontrol yapısıdır ve doğru kullanıldığında kodunuzu daha verimli hale getirebilir.

Başa dön tuşu