În acest tutorial, vom învăța despre instrucțiunea switch și funcționarea acesteia în programarea C ++ cu ajutorul unor exemple.
switch
Declarația ne permite să execute un bloc de cod printre multe alternative.
Sintaxa switch
declarației din C ++ este:
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 )
Cum funcționează declarația switch?
Se expression
evaluează o dată și se compară cu valorile fiecărei case
etichete.
- Dacă există o potrivire, se execută codul corespunzător după eticheta de potrivire. De exemplu, dacă valoarea variabilei este egală cu
constant2
, codul dupăcase constant2:
este executat până cândbreak
se întâlnește instrucțiunea. - Dacă nu există nicio potrivire, codul de după
default:
este executat.
Notă : Putem face același lucru cu if… else… if
scara. Cu toate acestea, sintaxa switch
declarației este mai curată și mult mai ușor de citit și de scris.
Organigrama declarației de comutare

Exemplu: Creați un calculator folosind declarația switch
// 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; )
Ieșire 1
Introduceți un operator (+, -, *, /): + Introduceți două numere: 2,3 4,5 2,3 + 4,5 = 6,8
Ieșire 2
Introduceți un operator (+, -, *, /): - Introduceți două numere: 2,3 4,5 2,3 - 4,5 = -2,2
Ieșire 3
Introduceți un operator (+, -, *, /): * Introduceți două numere: 2,3 4,5 2,3 * 4,5 = 10,35
Ieșire 4
Introduceți un operator (+, -, *, /): / Introduceți două numere: 2,3 4,5 2,3 / 4,5 = 0,511111
Ieșire 5
Introduceți un operator (+, -, *, /):? Introduceți două numere: 2.3 4.5 Eroare! Operatorul nu este corect.
În programul de mai sus, folosim switch… case
declarația pentru a efectua adunarea, scăderea, înmulțirea și împărțirea.
Cum funcționează acest program
- Mai întâi îi cerem utilizatorului să introducă operatorul dorit. Această intrare este apoi stocată în
char
variabila numită oper. - Apoi, îi cerem utilizatorului să introducă două numere, care sunt stocate în variabilele flotante num1 și num2.
switch
Declarația este apoi utilizată pentru a verifica operatorul introdus de utilizator:- Dacă utilizatorul intră
+
, adunarea se efectuează pe numere. - Dacă utilizatorul intră
-
, scăderea se efectuează asupra numerelor. - Dacă utilizatorul intră
*
, multiplicarea se efectuează pe numere. - Dacă utilizatorul intră
/
, împărțirea se face pe numere. - Dacă utilizatorul introduce orice alt caracter, codul implicit este tipărit.
- Dacă utilizatorul intră
Observați că break
declarația este utilizată în interiorul fiecărui case
bloc. Aceasta încheie switch
declarația.
Dacă break
instrucțiunea nu este utilizată, toate cazurile după corect case
sunt executate.