Switch-Anweisung
Teil des Abschnitts Grundlagen der C++-Journey von Coddy — Lektion 29 von 74.
Die switch-Anweisung ist wie eine mehrfache if-Anweisung. Anstatt eine einzelne Bedingung auszuwerten, prüft sie den Wert einer Variablen gegen mehrere Fälle und führt den Code aus, der dem entsprechenden Fall zugeordnet ist.
Hier ist die Grundstruktur einer switch-Anweisung:
switch (variable) {
case value1:
// Code, der ausgeführt wird, wenn variable gleich value1 ist
break;
case value2:
// Code, der ausgeführt wird, wenn variable gleich value2 ist
break;
// ... weitere Fälle
default:
// Code, der ausgeführt wird, wenn kein Fall zutrifft
}- Auf das Schlüsselwort
switchfolgt die Variable, die Sie testen möchten, in Klammern. - Jedes
caserepräsentiert einen möglichen Wert der Variable. - Der Code innerhalb jedes
casewird ausgeführt, wenn die Variable mit dem Wert dieses Cases übereinstimmt.
- Die
break-Anweisung ist entscheidend; sie beendet denswitch, nachdem ein Case ausgeführt wurde. Ohne sie würde die Ausführung in den nächsten Case „durchfallen“. - Der
default-Case ist optional und wird ausgeführt, wenn kein anderer Case übereinstimmt.
Hier ist ein Beispiel:
int day = 3;
std::string dayName;
switch (day) {
case 1:
dayName = "Monday";
break;
case 2:
dayName = "Tuesday";
break;
// ... Fälle für andere Tage
default:
dayName = "Invalid day";
}Sie können auch mehrere Fälle zu einem kombinieren:
int day = 3;
std::string dayName;
switch (day) {
case 1:
case 2:
case 3:
dayName = "Start of week";
break;
// ... Fälle für andere Tage
default:
dayName = "Invalid day";
}Aufgabe
AnfängerErstellen Sie ein Programm, das eine Monatsnummer (1 für Januar, 2 für Februar usw.) entgegennimmt und die Jahreszeit ausgibt, zu der sie gehört. Verwenden Sie eine switch-Anweisung für die Logik.
Die Jahreszeiten und ihre entsprechenden Monate sind:
- Winter: December (12), January (1), February (2)
- Spring: March (3), April (4), May (5)
- Summer: June (6), July (7), August (8)
- Autumn: September (9), October (10), November (11)
- Invalid month: für andere Optionen
Spickzettel
Die switch-Anweisung ist eine Mehrfachverzweigung, die eine Variable gegen mehrere Fälle prüft:
switch (variable) {
case value1:
// Code, der ausgeführt wird, wenn variable gleich value1 ist
break;
case value2:
// Code, der ausgeführt wird, wenn variable gleich value2 ist
break;
default:
// Code, der ausgeführt wird, wenn kein Fall zutrifft
}Hauptkomponenten:
case: repräsentiert einen möglichen Wert der Variablenbreak: beendet den switch, nachdem ein Fall ausgeführt wurde (verhindert das Durchlaufen)default: optionaler Fall, der ausgeführt wird, wenn kein anderer Fall zutrifft
Sie können mehrere Fälle kombinieren:
switch (day) {
case 1:
case 2:
case 3:
dayName = "Start of week";
break;
default:
dayName = "Invalid day";
}Probier es selbst
#include <iostream>
int main() {
int month;
std::cin >> month;
std::string season = "";
// Schreibe deinen Code unten
std::cout << season << std::endl;
return 0;
}Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Grundlagen
4Operatoren Teil 1
Arithmetische OperatorenModulo-OperatorInkrement/DekrementPost-Inkrement/DekrementArithmetische AbkürzungenVergleichsoperatorenString-Vergleich7Eingabe/Ausgabe Grundlagen
cout-Anweisungcin-AnweisungString-EingabeWiederholung - Bis 120Wiederholung - Wahr oder Falsch3Variablen Teil 2
TypdeklarationNamenskonventionenWiederholung – Variablen initialisierenType Casting Teil 1Type Casting Teil 26Entscheidungsfindung
If-AnweisungIf - ElseSwitch-AnweisungBedingter OperatorWiederholung - If ElseVerschachtelte If - Else