BESTE WEBSITE FÜR WEBENTWICKLER
C Sprache. W3Schools auf Deutsch. Unterricht für Anfänger

Ua En Es

C Switch


Switch-Anweisung

Anstatt viele if..else-Anweisungen zu schreiben, können Sie den switch verwenden Stellungnahme.

Die switch-Anweisung wählt einen von vielen auszuführenden Codeblöcken aus:

Syntax

switch(Ausdruck) {
  case x:
    // Codeblock
    break;
  case y:
    // Codeblock
    break;
  default:
    // Codeblock
}

So funktioniert es:

  • Der switch-Ausdruck wird einmal ausgewertet
  • Der Wert des Ausdrucks wird mit den Werten jedes case verglichen
  • Bei einer Übereinstimmung wird der zugehörige Codeblock ausgeführt
  • Die break-Anweisung bricht aus dem Switch-Block aus und stoppt die Ausführung
  • Die default-Anweisung ist optional und gibt Code an, der ausgeführt werden soll, wenn keine Übereinstimmung zwischen Groß- und Kleinschreibung vorliegt

Das folgende Beispiel verwendet die Wochentagsnummer, um den Wochentagsnamen zu berechnen:

Beispiel

int day = 4;

switch (day) {
  case 1:
    printf("Monday");
    break;
  case 2:
    printf("Tuesday");
    break;
  case 3:
    printf("Wednesday");
    break;
  case 4:
    printf("Thursday");
    break;
  case 5:
    printf("Friday");
    break;
  case 6:
    printf("Saturday");
    break;
  case 7:
    printf("Sunday");
    break;
}

// Outputs "Thursday" (day 4)
Try it Yourself »

Das Schlüsselwort break

Wenn C ein Schlüsselwort break erreicht, bricht es aus dem Schalterblock aus.

Dadurch wird die Ausführung weiterer Code- und Falltests innerhalb des Blocks gestoppt.

Wenn eine Übereinstimmung gefunden wird und die Arbeit erledigt ist, ist es Zeit für eine Pause. Weitere Tests sind nicht erforderlich.

Eine Pause kann viel Ausführungszeit sparen, da sie die Ausführung des gesamten restlichen Codes im Switch-Block „ignoriert“.


Das Standardschlüsselwort

Das Schlüsselwort default gibt einen Code an, der ausgeführt werden soll, wenn keine Übereinstimmung zwischen Groß- und Kleinschreibung vorliegt:

Beispiel

int day = 4;

switch (day) {
  case 6:
    printf("Today is Saturday");
    break;
  case 7:
    printf("Today is Sunday");
    break;
  default:
    printf("Looking forward to the Weekend");
}

// Outputs "Looking forward to the Weekend"
Try it Yourself »

Hinweis: Das Standardschlüsselwort muss als letzte Anweisung im Schalter verwendet werden und erfordert keine Unterbrechung.


C Übungen

Testen Sie sich mit Übungen

Übung:

Fügen Sie die fehlenden Teile ein, um die folgende switch-Anweisung zu vervollständigen:

int day = 2;
switch () {
 1:
printf("Monday");
;
 2:
printf("Sunday");
;
}