capypad
0 Tage Serie
cpp / beginner
Snippet

Switch-Anweisungen für mehrere Auswahlmöglichkeiten

Eine switch-Anweisung bietet eine effiziente Methode um verschiedenen Code basierend auf dem Wert einer Variable auszuführen. Sie vergleicht eine Variable mit mehreren konstanten Werten (cases). Das break-Schlüsselwort verhindert das Durchfallen zu nachfolgenden Cases. Der default-Case behandelt Werte die nicht mit den aufgelisteten Cases übereinstimmen. Switch ist oft übersichtlicher als mehrere if-else-Ketten beim Vergleichen eines Werts mit vielen Optionen.

snippet.cpp
cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#include <iostream>
 
int main() {
int grade = 3;
switch (grade) {
case 1:
std::cout << "Excellent!" << std::endl;
break;
case 2:
std::cout << "Good job!" << std::endl;
break;
case 3:
std::cout << "Satisfactory." << std::endl;
break;
case 4:
std::cout << "Needs improvement." << std::endl;
break;
case 5:
std::cout << "Not passed." << std::endl;
break;
default:
std::cout << "Invalid grade." << std::endl;
break;
}
return 0;
}
Erklärung
1
int grade = 3;
Deklariert Integer-Variable die einen Notenwert speichert
2
switch (grade) {
Beginnt switch-Anweisung die die Variable grade auswertet
3
case 1:
Label das dem Notenwert 1 entspricht
4
std::cout << "Excellent!" << std::endl;
Ausgabe für ausgezeichnete Note
5
break;
Beendet switch-Anweisung, verhindert Durchfallen
6
case 2:
Label das dem Notenwert 2 entspricht
7
std::cout << "Good job!" << std::endl;
Ausgabe für gute Note
8
break;
Beendet switch-Anweisung
9
case 3:
Label das dem Notenwert 3 entspricht
10
std::cout << "Satisfactory." << std::endl;
Ausgabe für befriedigende Note
11
break;
Beendet switch-Anweisung
12
default:
Fängt alle Notenwerte ab die nicht explizit aufgelistet sind
13
std::cout << "Invalid grade." << std::endl;
Ausgabe für ungültige Notenwerte