Čo je vyhlásenie o prepnutí v jazyku C ++?
Príkazy typu switch sú riadené vyhlásenie, ktoré sa považuje za náhradu za vyhlásenia if-else. Je to príkaz viaccestnej vetvy, ktorý poskytuje spôsob, ako usporiadať tok vykonávania do častí kódu na základe hodnoty výrazu. Vo veľmi jednoduchom termíne príkaz switch vyhodnocuje výraz, testuje ho a porovnáva ho s niekoľkými prípadmi napísanými v kóde. Hneď ako sa nájde zhoda s akýmkoľvek prípadom, kontrola vstúpi do tohto prípadu a začne vykonávať vyhlásenia napísané v tomto prípade, až kým sa nenájde vyhlásenie o prerušení. Hneď ako sa objaví príkaz na prerušenie, príkaz na prepnutie sa ukončí a riadenie programu opustí prepínač.
Niekedy sa môže stať, že sa hodnota výrazu nezhoduje. V takýchto prípadoch uvádzame predvolený prípad, ktorý sa vždy vykoná v prípade, že sa nenájde žiadna zhoda. Prípady v bloku príkazu switch sú reprezentované rôznymi číslami alebo reťazcami, ktoré sú známe ako identifikátory. Hodnota výrazu alebo hodnota poskytnutá používateľom sa porovnáva s týmito prípadmi, kým sa nenájde zhoda.
Syntax príkazu C ++ Switch
Syntax príkazu switch v programovacom jazyku C ++ je uvedená nižšie -
switch( expression )
(
case value1:
//Block of code;
break;
case value2:
//Block of code;
break;
case valueN:
//Block of code
break;
default:
//Block of code
break;
Pri používaní príkazu Switch musíte mať na pamäti nasledujúce veci:
- Menovky písmen môžu byť celé číslo alebo znak a mali by byť jedinečné
- Etikety na veciach končia vždy bodkočiarkou.
- Aj keď predvolené označenie prípadu nie je povinné, môže byť nanajvýš jedno, ak je definované.
- Na vyradenie kontroly zo slučky potrebujete príkaz break, inak by sa všetky prípady pred vykonaním prerušenia vykonali.
- Predvolený štítok prípadu nemá žiadnu konkrétnu polohu.
- Príkaz switch môže byť tiež vnorený.
Vývojový diagram príkazu na zmenu
Ako funguje Switch Switch v C ++?
Pochopme tok kontroly znázornený vo vyššie uvedenom vývojovom diagrame, aby sme lepšie porozumeli toku vykonávania.
Výraz sa odovzdáva s príkazom switch, ktorý sa rovná jednej z hodnôt prípadov. V prípade, že hodnota nie je rovnaká, vykoná sa predvolený prípad. Hodnota tohto výrazu sa potom porovná s identifikátorom prípadu alebo s prvým prípadom. Ak sa prvý prípad zhoduje, vykoná sa blok kódu spojený s prvým prípadom. Akonáhle dôjde k prerušeniu, vykonávanie sa zastaví a ukončíte príkaz switch. Ak sa však prípad nezhoduje, exekúcia pokračuje do nasledujúceho prípadu. Ak sa tento prípad zhoduje, potom druhý blok kódu vykoná inak, tok skontroluje nasledujúci prípad podobným spôsobom. Nakoniec, ak sa nezhoduje žiaden prípad, vykoná sa predvolený blok kódu.
Príklady príkazu Switch v C ++
Ukážeme vám niektoré príklady príkazu switch v jazyku C ++.
Príklad č. 1
Tento príklad objasní použitie príkazov na prepínanie.
#include
using namespace std;
int main () (
char grade_report = 'D';
cout << "Your performance is: " << endl;
switch(grade_report) (
case 'A' :
cout << "Outstanding Result!\n" << endl;
break;
case 'B' :
cout << "Excellent Result!\n" << endl;
break;
case 'C' :
cout << "Good Result\n" << endl;
break;
case 'D' :
cout << "Satisfying Result\n" << endl;
break;
case 'F' :
cout << "Poor Result\n" << endl;
break;
default :
cout << "You did not appear for exam\n" << endl;
)
return 0;
)
Výkon:
Váš výkon je: spokojný výsledok
Príklad č. 2
Tento príklad ukazuje použitie príkazu break v prepínači. Ak príkaz break nie je špecifikovaný po prípade, proces vykonávania bude pokračovať, kým nenarazí na príkaz break.
#include
using namespace std;
int main() (
int range_of_number=50;
switch (range_of_number) (
case 10:
case 20:
case 30:
cout << "The number is 10 or 20 or 30 " << endl;
break;
case 50:
case 55:cout << "This case also executes because there is no break " << endl;
cout << "\n" << endl;
case 60:
cout << "The number is either 40 or 50 or 60" << endl;
break;
default:
cout << "The number is greater than 60" << endl; ))
Výkon:
Tento prípad sa tiež vykoná, pretože nejde o prestávku
Číslo je 40 alebo 50 alebo 60
Príklad č. 3
#include
using namespace std;
int main()
(
int x = 10, y = 5;
switch(x==y && x+y<10)
(
case 1:
cout << "hi" << endl;
break;
case 0:
cout << "bye" << endl;
break;
default:
cout << " Hello bye " << endl;
))
Výkon:
zbohom
Príklad č. 4
Vnorené vyhlásenie o prepnutí
#include
using namespace std;
int main() (
int ID = 300;
int password = 1000;
cout << "Enter Your ID:\n " << endl;
scanf("%d", & ID);
switch (ID) (
case 300:
cout << "Enter your password:\n " << endl;
scanf("%d", & password);
switch (password) (
case 1000:
cout << "Welcome to the portal\n" << endl;
break;
default:
cout << "Enter correct password" << endl;
break;
)
break;
default:
cout << "Enter correct ID" << endl;
break;
))
Výkon:
Závisí to od hodnôt zadaných používateľom.
Výstup 1:
Zadajte svoje ID: 300
Zadajte svoje heslo: 1000
Vitajte na portáli
Výstup 2:
Zadajte svoje ID: 100
Zadajte správne ID
Výstup 3:
Zadajte svoje ID: 300
Zadajte svoje heslo: 000
Zadajte správne heslo
záver
Musíte vedieť, že základný tok a funkčnosť príkazu switch zostane rovnaká vo všetkých programovacích jazykoch. Rozdiel je viditeľný iba vo všeobecnej syntaxi založenej na použitom programovacom jazyku.
Odporúčané články
Toto bola príručka pre vyhlásenie o prepnutí v jazyku C ++. Tu diskutujeme o koncepte, syntaxi, práci a príkladoch príkazov na prepínanie v jazyku C ++. Viac informácií nájdete aj v ďalších navrhovaných článkoch -
- Funkcie reťazca C ++
- Čo je trieda šablón v jazyku C ++?
- Aplikácie C ++ v reálnom svete
- Sprievodca prípadom v jazyku Java
- Sprievodca príkazom PHP Switch