Bu eğiticide, bazı örnekler yardımıyla switch deyimini ve C ++ programlamasında çalışmasını öğreneceğiz.
Bu switch
ifade, birçok alternatif arasında bir kod bloğu yürütmemize izin verir.
switch
C ++ 'daki ifadenin sözdizimi şöyledir:
switch (expression) ( case constant1: // code to be executed if // expression is equal to constant1; break; case constant2: // code to be executed if // expression is equal to constant2; break;… default: // code to be executed if // expression doesn't match any constant )
Switch ifadesi nasıl çalışır?
, Bir expression
kez değerlendirilir ve her bir case
etiketin değerleri ile karşılaştırılır .
- Bir eşleşme varsa, eşleşen etiketten sonraki ilgili kod yürütülür. Örneğin, değişkenin değeri 'ye eşitse , ifadeyle karşılaşılıncaya kadar
constant2
sonraki kodcase constant2:
çalıştırılırbreak
. - Eşleşme yoksa, sonraki kod
default:
çalıştırılır.
Not : Aynı şeyi if… else… if
merdiven için de yapabiliriz. Bununla birlikte, switch
ifadenin sözdizimi daha temizdir ve okumak ve yazmak çok daha kolaydır.
Anahtar İfadesinin Akış Şeması

Örnek: Anahtar İfadesini kullanarak bir Hesap Makinesi oluşturma
// Program to build a simple calculator using switch Statement #include using namespace std; int main() ( char oper; float num1, num2; cout <> oper; cout << "Enter two numbers: " <> num1>> num2; switch (oper) ( case '+': cout << num1 << " + " << num2 << " = " << num1 + num2; break; case '-': cout << num1 << " - " << num2 << " = " << num1 - num2; break; case '*': cout << num1 << " * " << num2 << " = " << num1 * num2; break; case '/': cout << num1 << " / " << num2 << " = " << num1 / num2; break; default: // operator is doesn't match any case constant (+, -, *, /) cout << "Error! The operator is not correct"; break; ) return 0; )
Çıkış 1
Bir operatör girin (+, -, *, /): + İki sayı girin: 2.3 4.5 2.3 + 4.5 = 6.8
Çıkış 2
Bir operatör girin (+, -, *, /): - İki sayı girin: 2.3 4.5 2.3 - 4.5 = -2.2
Çıkış 3
Bir operatör girin (+, -, *, /): * İki sayı girin: 2.3 4.5 2.3 * 4.5 = 10.35
Çıkış 4
Bir operatör girin (+, -, *, /): / İki sayı girin: 2.3 4.5 2.3 / 4.5 = 0.511111
Çıkış 5
Bir operatör girin (+, -, *, /):? İki sayı girin: 2.3 4.5 Hata! Operatör doğru değil.
Yukarıdaki programda, switch… case
toplama, çıkarma, çarpma ve bölme işlemlerini gerçekleştirmek için ifadeyi kullanıyoruz .
Bu Program Nasıl Çalışır?
- Önce kullanıcıdan istenen operatörü girmesini isteriz. Bu girdi daha sonra
char
oper adlı değişkende saklanır . - Daha sonra kullanıcıdan num1 ve num2 float değişkenlerinde saklanan iki sayı girmesini isteriz.
switch
İfadesinin ardından kullanıcı tarafından girilen operatörü kontrol etmek için kullanılır:- Kullanıcı girerse
+
numaralara ekleme yapılır. - Kullanıcı girerse
-
sayılar üzerinde çıkarma işlemi yapılır. - Kullanıcı girerse
*
sayılar üzerinde çarpma işlemi yapılır. - Kullanıcı girerse
/
numaralar üzerinden bölme yapılır. - Kullanıcı başka bir karakter girerse, varsayılan kod yazdırılır.
- Kullanıcı girerse
İfadenin break
her case
bloğun içinde kullanıldığına dikkat edin . Bu switch
ifadeyi sonlandırır .
İfade break
kullanılmazsa, doğrudan sonraki tüm durumlar case
yürütülür.