C switch-Anweisung
C switch-Anweisung
In diesem Tutorial lernen Sie anhand eines Beispiels, die switch-Anweisung in der C-Programmierung zu erstellen.
Die switch-Anweisung ermöglicht es uns, einen Codeblock unter vielen Alternativen auszuführen.
Das Gleiche können Sie mit dem if...else..if
machen Leiter. Allerdings ist die Syntax der switch
Anweisung ist viel einfacher zu lesen und zu schreiben.
Syntax von switch...case
switch (expression)
{
case constant1:
// statements
break;
case constant2:
// statements
break;
.
.
.
default:
// default statements
}
Wie funktioniert die switch-Anweisung?
Der Ausdruck wird einmal ausgewertet und mit den Werten jedes Falls verglichen Bezeichnung.
- Bei Übereinstimmung werden die entsprechenden Anweisungen nach dem übereinstimmenden Label ausgeführt. Zum Beispiel, wenn der Wert des Ausdrucks gleich constant2 ist , Anweisungen nach
case constant2:
werden bisbreak
ausgeführt angetroffen wird. - Wenn es keine Übereinstimmung gibt, werden die Standardanweisungen ausgeführt.
Hinweise:
- Wenn wir nicht den
break
verwenden -Anweisung werden alle Anweisungen nach dem passenden Label ebenfalls ausgeführt. - Die
default
-Klausel innerhalb vonswitch
Anweisung ist optional.
Flussdiagramm der switch-Anweisung
Beispiel:Einfacher Rechner
// Program to create a simple calculator
#include <stdio.h>
int main() {
char operation;
double n1, n2;
printf("Enter an operator (+, -, *, /): ");
scanf("%c", &operation);
printf("Enter two operands: ");
scanf("%lf %lf",&n1, &n2);
switch(operation)
{
case '+':
printf("%.1lf + %.1lf = %.1lf",n1, n2, n1+n2);
break;
case '-':
printf("%.1lf - %.1lf = %.1lf",n1, n2, n1-n2);
break;
case '*':
printf("%.1lf * %.1lf = %.1lf",n1, n2, n1*n2);
break;
case '/':
printf("%.1lf / %.1lf = %.1lf",n1, n2, n1/n2);
break;
// operator doesn't match any case constant +, -, *, /
default:
printf("Error! operator is not correct");
}
return 0;
}
Ausgabe
Enter an operator (+, -, *, /): - Enter two operands: 32.5 12.4 32.5 - 12.4 = 20.1
Die - Der vom Benutzer eingegebene Operator wird in operation gespeichert Variable. Und zwei Operanden 32.5 und 12.4 werden in Variablen n1 gespeichert und n2 bzw..
Seit der Operation ist -
, springt die Steuerung des Programms auf
printf("%.1lf - %.1lf = %.1lf", n1, n2, n1-n2);
Schließlich beendet die break-Anweisung den switch
Erklärung.
C Sprache