Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Leer Switch, Break | Controle-instructies
C-Basis

bookSwitch, Break

Het gebruik van de switch-instructie

Stel je voor dat je een frisdrank koopt uit een automaat. Nadat je je gewenste drankje hebt geselecteerd, krijgt de variabele user_input diep in de computer van de automaat één van meerdere vooraf gedefinieerde waarden. Elk van deze opties wordt een case genoemd, en hier komt de switch-instructie in beeld.

Beschouw de switch-instructie als een alternatief voor de if-else-instructie. Deze reageert op specifieke waarden die je eerder hebt gedefinieerd.

Hier volgt de structuur van een switch-instructie:

main.c

main.c

copy
1234567891011121314151617
switch (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 }

Beschouw een voorbeeld van een automaat. Stel dat er drie knoppen zijn om verschillende soorten chips te selecteren:

  • Kaas-chips;
  • Bacon-chips;
  • Chili-chips.
Main.c

Main.c

copy
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; }

Als de geteste expressie niet overeenkomt met een van de vermelde gevallen, wordt het default-geval uitgevoerd. Als er geen default-geval is opgegeven, gaat het programma gewoon verder.

Note
Opmerking

De geteste expressie in een switch-instructie mag alleen van het type integer of char zijn. Het is niet toegestaan om strings of niet-integer datatypes als cases te gebruiken.

Main.c

Main.c

copy
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; }

De rol van break

Het break-commando stopt de uitvoering van het huidige blok en gaat verder met het volgende deel van de code. Zodra de relevante case is afgehandeld, verlaat je dat blok en gaat het programma verder.

Zonder het break-commando zou de switch-instructie doorgaan met uitvoeren, wat waarschijnlijk tot onbedoelde resultaten leidt.

Main.c

Main.c

copy
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; }

Als het break-commando ontbreekt, begint het programma direct na het vinden van een overeenkomende case met uitvoeren en gaat door totdat het een break tegenkomt of het einde van de switch bereikt.

question mark

Wat is het belangrijkste doel van de break-instructie binnen een switch-blok?

Select the correct answer

Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 4. Hoofdstuk 4

Vraag AI

expand

Vraag AI

ChatGPT

Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.

Awesome!

Completion rate improved to 2.63

bookSwitch, Break

Veeg om het menu te tonen

Het gebruik van de switch-instructie

Stel je voor dat je een frisdrank koopt uit een automaat. Nadat je je gewenste drankje hebt geselecteerd, krijgt de variabele user_input diep in de computer van de automaat één van meerdere vooraf gedefinieerde waarden. Elk van deze opties wordt een case genoemd, en hier komt de switch-instructie in beeld.

Beschouw de switch-instructie als een alternatief voor de if-else-instructie. Deze reageert op specifieke waarden die je eerder hebt gedefinieerd.

Hier volgt de structuur van een switch-instructie:

main.c

main.c

copy
1234567891011121314151617
switch (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 }

Beschouw een voorbeeld van een automaat. Stel dat er drie knoppen zijn om verschillende soorten chips te selecteren:

  • Kaas-chips;
  • Bacon-chips;
  • Chili-chips.
Main.c

Main.c

copy
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; }

Als de geteste expressie niet overeenkomt met een van de vermelde gevallen, wordt het default-geval uitgevoerd. Als er geen default-geval is opgegeven, gaat het programma gewoon verder.

Note
Opmerking

De geteste expressie in een switch-instructie mag alleen van het type integer of char zijn. Het is niet toegestaan om strings of niet-integer datatypes als cases te gebruiken.

Main.c

Main.c

copy
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; }

De rol van break

Het break-commando stopt de uitvoering van het huidige blok en gaat verder met het volgende deel van de code. Zodra de relevante case is afgehandeld, verlaat je dat blok en gaat het programma verder.

Zonder het break-commando zou de switch-instructie doorgaan met uitvoeren, wat waarschijnlijk tot onbedoelde resultaten leidt.

Main.c

Main.c

copy
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; }

Als het break-commando ontbreekt, begint het programma direct na het vinden van een overeenkomende case met uitvoeren en gaat door totdat het een break tegenkomt of het einde van de switch bereikt.

question mark

Wat is het belangrijkste doel van de break-instructie binnen een switch-blok?

Select the correct answer

Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 4. Hoofdstuk 4
some-alt