C++ switch..case-Anweisung
C++ switch..case-Anweisung
In diesem Tutorial lernen wir die switch-Anweisung und ihre Funktionsweise in der C++-Programmierung anhand einiger Beispiele kennen.
Der switch
-Anweisung ermöglicht es uns, einen Codeblock unter vielen Alternativen auszuführen.
Die Syntax von switch
Anweisung in C++ ist:
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
}
Wie funktioniert die switch-Anweisung?
Die expression
wird einmal ausgewertet und mit den Werten von jedem case
verglichen Bezeichnung.
- Bei Übereinstimmung wird der entsprechende Code nach dem übereinstimmenden Label ausgeführt. Zum Beispiel, wenn der Wert der Variablen gleich
constant2
ist , der Code nachcase constant2:
wird ausgeführt, bis die break-Anweisung auftritt. - Wenn es keine Übereinstimmung gibt, der Code nach
default:
wird ausgeführt.
Hinweis :Wir können dasselbe mit if...else..if
machen Leiter. Allerdings ist die Syntax des switch
-Anweisung ist sauberer und viel einfacher zu lesen und zu schreiben.
Flussdiagramm der switch-Anweisung
Beispiel:Erstellen Sie einen Rechner mit der switch-Anweisung
// Program to build a simple calculator using switch Statement
#include <iostream>
using namespace std;
int main() {
char oper;
float num1, num2;
cout << "Enter an operator (+, -, *, /): ";
cin >> oper;
cout << "Enter two numbers: " << endl;
cin >> 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;
}
Ausgang 1
Enter an operator (+, -, *, /): + Enter two numbers: 2.3 4.5 2.3 + 4.5 = 6.8
Ausgang 2
Enter an operator (+, -, *, /): - Enter two numbers: 2.3 4.5 2.3 - 4.5 = -2.2
Ausgang 3
Enter an operator (+, -, *, /): * Enter two numbers: 2.3 4.5 2.3 * 4.5 = 10.35
Ausgang 4
Enter an operator (+, -, *, /): / Enter two numbers: 2.3 4.5 2.3 / 4.5 = 0.511111
Ausgang 5
Enter an operator (+, -, *, /): ? Enter two numbers: 2.3 4.5 Error! The operator is not correct.
Im obigen Programm verwenden wir den switch...case
Anweisung zum Ausführen von Addition, Subtraktion, Multiplikation und Division.
Wie dieses Programm funktioniert
- Wir fordern den Benutzer zuerst auf, den gewünschten Operator einzugeben. Diese Eingabe wird dann im
char
gespeichert Variable namens oper . - Dann fordern wir den Benutzer auf, zwei Zahlen einzugeben, die in den Float-Variablen num1 gespeichert werden und num2 .
- Die
switch
-Anweisung wird dann verwendet, um den vom Benutzer eingegebenen Operator zu überprüfen:- Wenn der Benutzer
+
eingibt , werden die Zahlen addiert. - Wenn der Benutzer
-
eingibt , Subtraktion wird an den Zahlen durchgeführt. - Wenn der Benutzer
*
eingibt , die Zahlen werden multipliziert. - Wenn der Benutzer
/
eingibt , die Zahlen werden dividiert. - Wenn der Benutzer ein anderes Zeichen eingibt, wird der Standardcode gedruckt.
- Wenn der Benutzer
Beachten Sie, dass break
-Anweisung wird in jedem case
verwendet Block. Dies beendet den switch
Aussage.
Wenn die break
Anweisung nicht verwendet wird, alle Fälle nach dem korrekten case
ausgeführt werden.
C Sprache