====== switch-Anweisung ======
Wenn eine Auswahl aus mehreren Varianten möglich ist, kann anstelle der if-Verzweigung die switch-Anweisung verwendet werden. Es handelt sich hierbei um eine Mehrfachauswahl.
==== Beispiel Wochentag ====
Der einer Zahl zwischen 0 und 6 entsprechende Wochentag soll ausgegeben werden. (0...Montag, 1...Dienstag, usw.)
int wotag;
cout << "Wochentag. Zahl zwischen 0 und 6 eingeben: ";
cin >> wotag;
switch (wotag)
{
case 0: cout << "Montag\n"; break;
case 1: cout << "Dienstag\n"; break;
case 2: cout << "Mittwoch\n"; break;
case 3: cout << "Donnerstag\n"; break;
case 4: cout << "Freitag\n"; break;
case 5: cout << "Samstag\n"; break;
case 6: cout << "Sonntag\n"; break;
default: cout << "Falsche Zahl eingegeben!";
}
Bei der Ausführung der switch-Anweisung wird der aktuelle Wert der Auswahlgröße (wotag) der Reihe nach mit den case-Konstanten (0,1,2,3,4,5,6) verglichen.
Sobald die erste Übereinstimmung festgestellt wird, werden die darauffolgenden Anweisungen ausgeführt. Um dies zu verhindern verwendet man die Anweisung break. break heißt, dass die switch-Anweisung verlassen wird. Ohne break würden nach der ersten Übereinstimmung alle folgenden Wochentage auch ausgegeben werden.
Der Typ der Auswahlgröße darf **nicht float** sein.
==== Beispiel Monatslänge ====
Die Monatsnummer soll eingegeben werden. Anschließend soll die Anzahl der Tage des Monats ausgegeben werden.
switch (monat)
{case 2: cout << "28 oder 29 Tage (Schaltjahr)"; break;
case 1: case 3: case 5: case 7: case 8: case 10: case 12: cout << "31 Tage"; break;
case 4: case 6: case 9: case 11: cout << "30 Tage"; break;
default: cout << "Kein Monat!";
==== Weitere Beispiele ====
Schreibe ein Programm,...
a) **//Schularbeitsnote//**
... das Schularbeitsnoten in verbale Beurteilungen umrechnet.
(z.B. 1 ... Sehr gut, etc.)
----
([[:inf:progc:c11|zurück]])