I denne vejledning lærer vi om switch-erklæring og dens arbejde i C ++ programmering ved hjælp af nogle eksempler.
Det switch
udsagn giver os mulighed for at udføre en blok af kode blandt mange alternativer.
Syntaksen for switch
udsagnet i C ++ er:
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 )
Hvordan fungerer switch-erklæringen?
Den expression
evalueres en gang og sammenlignes med værdierne for hver case
etiket.
- Hvis der er et match, udføres den tilsvarende kode efter den matchende etiket. For eksempel, hvis værdien af variablen er lig med
constant2
,case constant2:
udføres koden efter, indtilbreak
udsagnet er stødt. - Hvis der ikke er nogen match,
default:
udføres koden efter .
Bemærk : Vi kan gøre det samme med if… else… if
stigen. Syntaxen for switch
udsagnet er dog renere og meget lettere at læse og skrive.
Flowchart of switch Erklæring
![](https://cdn.wiki-base.com/4103815/c_switchcase_statement_with_examples.png.webp)
Eksempel: Opret en lommeregner ved hjælp af switch Statement
// 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; )
Udgang 1
Indtast en operator (+, -, *, /): + Indtast to tal: 2,3 4,5 2,3 + 4,5 = 6,8
Udgang 2
Indtast en operator (+, -, *, /): - Indtast to tal: 2,3 4,5 2,3 - 4,5 = -2,2
Udgang 3
Indtast en operator (+, -, *, /): * Indtast to tal: 2,3 4,5 2,3 * 4,5 = 10,35
Udgang 4
Indtast en operator (+, -, *, /): / Indtast to tal: 2,3 4,5 2,3 / 4,5 = 0,511111
Udgang 5
Indtast en operatør (+, -, *, /):? Indtast to tal: 2.3 4.5 Fejl! Operatøren er ikke korrekt.
I ovenstående program bruger vi switch… case
udsagnet til at udføre addition, subtraktion, multiplikation og division.
Sådan fungerer dette program
- Vi beder først brugeren om at indtaste den ønskede operatør. Denne indgang lagres derefter i
char
variablen navngivet oper. - Vi beder derefter brugeren om at indtaste to tal, som er gemt i floatvariablerne num1 og num2.
- Det
switch
udsagn derefter bruges til at kontrollere operatøren indtastet af brugeren:- Hvis brugeren går ind
+
, udføres antallet af numre. - Hvis brugeren går ind
-
, foretages subtraktion af tallene. - Hvis brugeren går ind
*
, udføres multiplikation på tallene. - Hvis brugeren går ind
/
, uddeles numrene. - Hvis brugeren indtaster et andet tegn, udskrives standardkoden.
- Hvis brugeren går ind
Bemærk, at break
udsagnet bruges i hver case
blok. Dette afslutter switch
udsagnet.
Hvis break
udsagnet ikke bruges, case
udføres alle sager efter det korrekte .