C Prípady prepínača

C Switch Case Statements



Príkaz switch (alebo jednoducho prípad) je mechanizmus toku riadenia, ktorý určuje spustenie programu na základe hodnoty premennej alebo výrazu.

Použitie príkazu switch vám umožní otestovať viacero podmienok a vykonať konkrétny blok, iba ak je podmienka pravdivá. Aj keď to funguje podobne ako s príkazom if ... else if ... .else, syntax je jednoduchšie a čitateľnejšie a spravovateľnejšie.







Tento tutoriál sa zameriava na to, ako vám ukázať, ako vytvárať a pracovať s príkazmi prepínačov v programovaní v jazyku C.



Základné použitie

Príkaz switch je ľahko implementovateľný. Všeobecná syntax je uvedená nižšie:



prepínač (expr) {
casevar1:
// kód
prestávka;
casevar2:
// kód
prestávka;
casevar3:
// kód
prestávka;
casevarN:
// kód
prestávka;
...
….
….
predvolené:
// kód
}

Ako to funguje

Príkaz switch implementuje jednoduchú logiku na vyhodnotenie každého prípadového bloku.





Začína sa to vyhodnotením výrazu vo vnútri bloku prepínačov. Potom porovná hodnotu z bloku prepínačov s každým blokom prípadu.

Akonáhle nájde zhodu v jednom z definovaných blokov prípadu, spustí kód v tomto bloku, kým nenarazí na kľúčové slovo break.



Ak sa v žiadnom z definovaných blokov prípadu nestretne so zhodou, skočí na predvolený príkaz a spustí kód v ňom. Predvolený blok je voliteľný a vynechateľný, ak v prípade scenára, ktorý sa nezhoduje, nie je potrebná žiadna akcia

POZNÁMKA: Je dobré zaistiť, aby bol každý príkaz case ukončený príkazom break, aby sa zabránilo spusteniu všetkých príkazov po zodpovedajúcom bloku.

C Príklad vyhlásenia prípadu prepínača

Ilustrujme príkaz switch na veľmi jednoduchom príklade:

#zahrnúť

intmain() {
intkde= 5;
prepínač (kde) {
prípad 3:
printf („Hodnota je 3“);
prestávka;
prípad 4:
printf („Hodnota je 4“);
prestávka;
prípad 5:
printf („Hodnota je 5“);
prestávka;
predvolené:
printf („Hodnota nie je ani 3, 4 ani 5“);
}
návrat0;
}

Ak spustíme vyššie uvedený príklad, mali by sme získať výstup podobný nižšie uvedenému:

Hodnota je5

Nasledujúci vývojový diagram ilustruje logiku vyššie uvedeného programu:

Vnorené vyhlásenie o prepínači

C vám umožňuje vložiť do príkazu switch vnorené príkazy prepínača. Vnorený príkaz switch súvisí s hodnotou vonkajšieho prepínača.

Zvážte nasledujúci príklad:

#zahrnúť

intmain() {
intdlh= 5;
intaccess_code= 2028;
prepínač (dlh) {
prípad 1:
prepínač (prístupový kód) {
prípad 2021:
printf ('[+] Platný prístupový kód!');
prestávka;
predvolené:
printf ('[-] Neplatný prístupový kód!');
}
prestávka;
predvolené:
printf („[-] Povolené je iba oddelenie 1!“);
}
návrat0;
}

Vo vyššie uvedenom príklade implementujeme dva príkazy prepínača. Prvý skontroluje, či je poskytnuté oddiel 1. Ak je pravdivý, pokračuje do ďalšieho bloku prepínačov a skontroluje platný prístupový kód.

Ak hĺbková hodnota nie je jedna, vykonanie sa presunie do predvoleného bloku.

Nasleduje spustenie vyššie uvedeného kódu so správnym a nesprávnym kódom PIN a prístupovým kódom.

V prvom prípade sú správny aj prístupový kód správny; vykonanie teda nikdy nedosiahne predvolené bloky.

V druhom prípade je nesprávny prístupový aj prístupový kód; vykonanie preto okamžite preskočí na prvý predvolený blok.

Pokyny pre vyhlásenia o prepínačoch

Nasledujú rýchle pokyny, ktoré je potrebné poznamenať pri vytváraní príkazov prepínača v jazyku C.

  1. Kľúčovému slovu prepínača musíte odovzdať výraz.
  2. Prípady musia kontrolovať jedinečné hodnoty
  3. Ukončite každý blok prípadov pomocou kľúčového slova break.
  4. Môžete vnoriť viacero príkazov prepínača.
  5. Ak je v prípade nesúladných prípadov potrebná akcia, môžete zahrnúť predvolený príkaz.

Záver

Táto príručka vás prevedie základmi vytvárania a používania príkazov prepínača C. Prepínače sú užitočné vtedy, ak máte zložité prípady rozhodovania, ktoré je ťažké implementovať pomocou príkazu a keď iného.