Switch, Break
Brug af switch-sætningen
Forestil dig, at du køber en sodavand fra en automat. Når du vælger din ønskede drik, får variablen user_input en af flere foruddefinerede værdier dybt inde i automatens computer. Hver af disse muligheder kaldes en case, og det er her, switch-sætningen anvendes.
Tænk på switch-sætningen som en anden version af if-else-sætningen. Den reagerer på specifikke værdier, du tidligere har defineret.
Her er strukturen for en switch-sætning:
main.c
1234567891011121314151617switch (integer_expression) { case first_case_value: // Instruction for this case break; case second_case_value: // Instruction for this case break; case third_case_value: // Instruction for this case break; default: // Default instruction }
Overvej et eksempel med en salgsautomat. Antag, at der er tre knapper til at vælge forskellige typer chips:
- Ostesmag chips;
- Baconsmag chips;
- Chilismag chips.
Main.c
123456789101112131415161718192021222324#include <stdio.h> int main() { int userInput = 2; switch (userInput) { case 1: printf("You selected cheese-flavored chips.\n"); break; case 2: printf("You selected bacon-flavored chips.\n"); break; case 3: printf("You selected chili-flavored chips.\n"); break; default: printf("You selected another item.\n"); } return 0; }
Hvis det testede udtryk ikke matcher nogen af de angivne cases, udføres default-casen. Hvis der ikke er angivet nogen default-case, fortsætter programmet blot sit forløb.
Det udtrykte udtryk i en switch-sætning kan kun være af typen heltal eller char. Du kan ikke bruge strenge eller ikke-heltal datatyper som cases.
Main.c
12345678910111213141516171819202122232425#include <stdio.h> int main() { char userInput = 'y'; switch (userInput) { case 'a': printf("You entered 'a' character\n"); break; case 'b': printf("You entered 'b' character\n"); break; case 'c': printf("You entered 'c' character\n"); break; default: printf("You entered unknown character\n"); } return 0; }
Rollen af break
break-kommandoen stopper udførelsen af det aktuelle blok og fortsætter til næste kodeafsnit. Når den relevante case er afsluttet, forlader du blokken og fortsætter med programmet.
Uden break-kommandoen ville switch-sætningen køre kontinuerligt, hvilket sandsynligvis ville føre til utilsigtede resultater.
Main.c
123456789101112131415161718192021222324#include <stdio.h> int main() { char userInput = 'b'; switch (userInput) { case 'a': printf("You entered 'a' character\n"); // without break case 'b': printf("You entered 'b' character\n"); // without break case 'c': printf("You entered 'c' character\n"); // without break default: printf("You entered unknown character\n"); } return 0; }
Hvis break-kommandoen mangler, begynder programmet straks at udføre koden efter at have fundet en matchende case og fortsætter indtil det finder et break eller når slutningen af switch-blokken.
Tak for dine kommentarer!
Spørg AI
Spørg AI
Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat
Awesome!
Completion rate improved to 2.63
Switch, Break
Stryg for at vise menuen
Brug af switch-sætningen
Forestil dig, at du køber en sodavand fra en automat. Når du vælger din ønskede drik, får variablen user_input en af flere foruddefinerede værdier dybt inde i automatens computer. Hver af disse muligheder kaldes en case, og det er her, switch-sætningen anvendes.
Tænk på switch-sætningen som en anden version af if-else-sætningen. Den reagerer på specifikke værdier, du tidligere har defineret.
Her er strukturen for en switch-sætning:
main.c
1234567891011121314151617switch (integer_expression) { case first_case_value: // Instruction for this case break; case second_case_value: // Instruction for this case break; case third_case_value: // Instruction for this case break; default: // Default instruction }
Overvej et eksempel med en salgsautomat. Antag, at der er tre knapper til at vælge forskellige typer chips:
- Ostesmag chips;
- Baconsmag chips;
- Chilismag chips.
Main.c
123456789101112131415161718192021222324#include <stdio.h> int main() { int userInput = 2; switch (userInput) { case 1: printf("You selected cheese-flavored chips.\n"); break; case 2: printf("You selected bacon-flavored chips.\n"); break; case 3: printf("You selected chili-flavored chips.\n"); break; default: printf("You selected another item.\n"); } return 0; }
Hvis det testede udtryk ikke matcher nogen af de angivne cases, udføres default-casen. Hvis der ikke er angivet nogen default-case, fortsætter programmet blot sit forløb.
Det udtrykte udtryk i en switch-sætning kan kun være af typen heltal eller char. Du kan ikke bruge strenge eller ikke-heltal datatyper som cases.
Main.c
12345678910111213141516171819202122232425#include <stdio.h> int main() { char userInput = 'y'; switch (userInput) { case 'a': printf("You entered 'a' character\n"); break; case 'b': printf("You entered 'b' character\n"); break; case 'c': printf("You entered 'c' character\n"); break; default: printf("You entered unknown character\n"); } return 0; }
Rollen af break
break-kommandoen stopper udførelsen af det aktuelle blok og fortsætter til næste kodeafsnit. Når den relevante case er afsluttet, forlader du blokken og fortsætter med programmet.
Uden break-kommandoen ville switch-sætningen køre kontinuerligt, hvilket sandsynligvis ville føre til utilsigtede resultater.
Main.c
123456789101112131415161718192021222324#include <stdio.h> int main() { char userInput = 'b'; switch (userInput) { case 'a': printf("You entered 'a' character\n"); // without break case 'b': printf("You entered 'b' character\n"); // without break case 'c': printf("You entered 'c' character\n"); // without break default: printf("You entered unknown character\n"); } return 0; }
Hvis break-kommandoen mangler, begynder programmet straks at udføre koden efter at have fundet en matchende case og fortsætter indtil det finder et break eller når slutningen af switch-blokken.
Tak for dine kommentarer!