switch deyimi
- C kursu
- Başlangıç
- Ders 38/116
- 5 dk
switch, case, break ve default ile çoklu durum seçmeyi öğrenirsin.
switch deyimi
switch bir deyimin değerine göre birden çok durumdan birini seçer. Her durum case ile başlar, break ile biter. Hiçbiri uymazsa default çalışır.
int day = 3;
switch (day) {
case 1: printf("Pazartesi\n"); break;
case 2: printf("Salı\n"); break;
case 3: printf("Çarşamba\n"); break;
default: printf("Bilinmiyor\n");
}switch yalnızca tam sayı veya char değerleriyle çalışır; dize ile çalışmaz. Her case bir etikettir; eşleşme bulunca akış oradan başlar.
Düşme davranışı
break yazmazsan akış bir sonraki case'e düşer. Bu bazen istenen bir davranıştır; genellikle ise hatadır.
int n = 1;
switch (n) {
case 1:
case 2:
case 3:
printf("1-3 arası\n");
break;
default:
printf("Dışında\n");
}Bu örnekte case 1, case 2 ve case 3 aynı bloğu paylaşır. n=1, n=2 ve n=3 için aynı çıktıyı alırsın.
Uygulama Mevsimi switch ile yazdır
Bir C programı yaz. int month = 4; tanımla. switch (month) ile mevsim yazdır: case 12, case 1, case 2 için printf("Kış\n"); break;, case 3, case 4, case 5 için printf("İlkbahar\n"); break;, default için printf("Diğer\n");. #include <stdio.h> başta olsun.
Başlangıç kodu
#include <stdio.h>
int main(void) {
// month tanımla, switch ile mevsim yazdır
return 0;
}Örnek çözüm
#include <stdio.h>
int main(void) {
int month = 4;
switch (month) {
case 12: case 1: case 2:
printf("Kış\n");
break;
case 3: case 4: case 5:
printf("İlkbahar\n");
break;
default:
printf("Diğer\n");
}
return 0;
}Beklenen çıktı
İlkbahar
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 switch parçalarını eşleştir
| Kavram | Anlamı |
|---|---|
switch |
Anahtar deyim |
case |
Durum etiketi |
break |
Durdur |
default |
Varsayılan |
2 switch'te break ne yapar?
case 1: printf("A"); break;- Akışı varsayılana götürür
- Yeni bir case başlatır
- Switch bloğundan çıkar Doğru cevap
- Hiçbir şey
Açıklama: break switch bloğundan çıkmayı sağlar.
3 switch'i kapat
switch (n) {
case 1: printf("A"); break;
default: printf("Bilinmiyor");
____;
switch (n) {
case 1: printf("A"); break;
default: printf("Bilinmiyor");
};
Açıklama: switch bloğu } ile kapanır.