C ++ switch ... prohlášení o případu (s příklady)

V tomto tutoriálu se pomocí několika příkladů dozvíme o příkazu switch a jeho práci v programování v C ++.

Toto switchprohlášení nám umožňuje provést blok kódu mezi mnoha alternativami.

Syntaxe switchpříkazu v C ++ je:

 switch (expression) ( case constant1: // code to be executed if // expression is equal to constant1; break; case constant2: // code to be executed if // expression is equal to constant2; break;… default: // code to be executed if // expression doesn't match any constant )

Jak funguje příkaz switch?

Hodnota expressionse vyhodnotí jednou a porovná se s hodnotami každého caseštítku.

  • Pokud existuje shoda, odpovídající kód po provedení odpovídajícího štítku. Například pokud je hodnota proměnné rovna constant2, bude kód po case constant2:proveden, dokud nenarazí na breakpříkaz.
  • Pokud není shoda, provede se kód po default:.

Poznámka : Totéž můžeme udělat s if… else… ifžebříkem. Syntaxe switchpříkazu je však čistší a je mnohem snazší číst a psát.

Vývojový diagram příkazu switch

Vývojový diagram přepínače C ++… prohlášení o případu

Příklad: Vytvořte kalkulačku pomocí příkazu switch

 // Program to build a simple calculator using switch Statement #include using namespace std; int main() ( char oper; float num1, num2; cout <> oper; cout << "Enter two numbers: " <> num1>> num2; switch (oper) ( case '+': cout << num1 << " + " << num2 << " = " << num1 + num2; break; case '-': cout << num1 << " - " << num2 << " = " << num1 - num2; break; case '*': cout << num1 << " * " << num2 << " = " << num1 * num2; break; case '/': cout << num1 << " / " << num2 << " = " << num1 / num2; break; default: // operator is doesn't match any case constant (+, -, *, /) cout << "Error! The operator is not correct"; break; ) return 0; )

Výstup 1

 Zadejte operátor (+, -, *, /): + Zadejte dvě čísla: 2,3 4,5 2,3 + 4,5 = 6,8

Výstup 2

 Zadejte operátor (+, -, *, /): - Zadejte dvě čísla: 2,3 4,5 2,3 - 4,5 = -2,2

Výstup 3

 Zadejte operátor (+, -, *, /): * Zadejte dvě čísla: 2,3 4,5 2,3 * 4,5 = 10,35

Výstup 4

 Zadejte operátor (+, -, *, /): / Zadejte dvě čísla: 2,3 4,5 2,3 / 4,5 = 0,511111

Výstup 5

Zadejte operátora (+, -, *, /):? Zadejte dvě čísla: 2.3 4.5 Chyba! Obsluha není správná.

Ve výše uvedeném programu používáme switch… casepříkaz k provádění sčítání, odčítání, násobení a dělení.

Jak tento program funguje

  1. Nejprve vyzveme uživatele k zadání požadovaného operátora. Tento vstup se poté uloží do charproměnné s názvem oper.
  2. Poté vyzveme uživatele k zadání dvou čísel, která jsou uložena v proměnných float num1 a num2.
  3. Příkaz switchse poté použije ke kontrole operátoru zadaného uživatelem:
    • Pokud uživatel vstoupí +, provede se přidání na čísla.
    • Pokud uživatel vstoupí -, odečte se od čísel.
    • Pokud uživatel vstoupí *, provede se na číslech násobení.
    • Pokud uživatel vstoupí /, provede se dělení na čísla.
    • Pokud uživatel zadá jakýkoli jiný znak, vytiskne se výchozí kód.

Všimněte si, že breakpříkaz je použit uvnitř každého casebloku. Tím se switchpříkaz ukončí .

Pokud breakpříkaz není použit, casejsou provedeny všechny případy po správném .

Zajímavé články...