Mi az a váltási nyilatkozat a C ++-ban?
Az esetváltásos állítások olyan ellenőrzött utasítások, amelyeket az if-else állítások helyettesítésének tekintünk. Ez egy többutas ágnyilatkozat, amely lehetőséget ad arra, hogy a kifejezés értéke alapján a kódrészek végrehajtásának folyamatát megszervezzük. Egy nagyon alapvető kifejezésben a kapcsoló utasítás kiértékeli egy kifejezést, teszteli és összehasonlítja a kódban írt több esettel. Amint egyezést találnak bármelyik esettel, a vezérlő belép az adott esetbe, és addig kezdi a megadott utasítások végrehajtását, amíg törésnyilatkozatot nem találnak. Amint megjelenik egy törésjelzés, a kapcsoló utasítás megszűnik, és a programvezérlés kilép.
Előfordulhat, hogy egyetlen eset sem felel meg a kifejezés értékének. Ilyen esetekben említünk egy alapértelmezett esetet, amely mindig végrehajtódik, ha nem található egyezés. A kapcsoló utasítás mondatában szereplő eseteket különböző számok vagy karakterláncok képviselik, amelyeket azonosítónak hívnak. A kifejezés értékét vagy a felhasználó által megadott értéket ezekkel az esetekkel hasonlítják össze, amíg a találat meg nem található.
A C ++ kapcsoló utasítás szintaxisa
A kapcsoló utasítás szintaxisa a C ++ programozási nyelven az alábbiakban található:
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;
A váltási nyilatkozat használatakor a következőket kell szem előtt tartania:
- Az esetcímkék lehetnek egész számok vagy karakterek, és egyedinek kell lenniük
- Az esetcímkék mindig pontosvesszővel zárulnak.
- Annak ellenére, hogy az alapértelmezett esetcímke nem kötelező, legfeljebb az egyik lehet, ha meg van határozva.
- Szünetelési nyilatkozatra van szüksége az ellenőrzés kikapcsolásához, különben minden szünet előtti eset végrehajtásra kerül.
- Az alapértelmezett esetcímkének nincs meghatározott helye.
- A kapcsoló utasítás is beágyazható.
A kapcsolási nyilatkozat folyamatábra
Hogyan működik a Switch Statement a C ++-ban?
Megértjük a fenti folyamatábrán ábrázolt irányítási folyamatot, hogy jobban megértsük a végrehajtás folyamatát.
A kifejezést átadjuk a kapcsoló utasításnak, amely megegyezik az esetek egyik értékével. Ha az érték nem azonos, akkor az alapértelmezett eset kerül végrehajtásra. Ezután a kifejezés értékét összehasonlítják az eset azonosítójával vagy az első esettel. Ha az első eset megegyezik, akkor az első esethez társított kódblokk kerül végrehajtásra. A szünet befejezése után a végrehajtás leáll, és kilép a váltási utasításból. Ha azonban az eset nem egyezik, akkor a végrehajtás a következő esetre folyik. Ha ez az eset megegyezik, akkor a második kódblokk egyébként hajtódik végre, az áramlás a következő esetet hasonló módon ellenőrzi. Végül, ha egyik eset sem felel meg, akkor az alapértelmezett kódblokk kerül végrehajtásra.
Példák a C ++ kapcsolónyilatkozatra
Lásd a kapcsoló utasítás néhány példáját a C ++-ban.
1. példa
Ez a példa világosabbá fogja tenni a kapcsoló utasításokat.
#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;
)
Kimenet:
Teljesítménye: kielégítő eredmény
2. példa
Ez a példa a break utasítás használatát ábrázolja egy kapcsolóban. Ha az eset után nem adják meg a szünetkivonatot, akkor a végrehajtási folyamat addig folytatódik, amíg meg nem találja a szünetnyilatkozatot.
#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; ))
Kimenet:
Ez az eset akkor is végrehajtódik, mert nincs törés
A szám 40 vagy 50, vagy 60
3. példa
#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;
))
Kimenet:
Viszlát
4. példa
Beágyazott kapcsoló nyilatkozat
#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;
))
Kimenet:
Ez a felhasználó által megadott értékektől függ.
1. kimenet:
Írja be személyi azonosítóját: 300
Írja be a jelszavát: 1000
Üdvözöljük a portálon
2. kimenet:
Írja be személyi azonosítóját: 100
Írja be a helyes azonosítót
3. output:
Írja be személyi azonosítóját: 300
Írja be a jelszavát: 000
Írja be a helyes jelszót
Következtetés
Tudnia kell, hogy a switch utasítás alapvető folyamata és funkcionalitása változatlan marad az összes programozási nyelvben. A különbség csak az alkalmazott szintaxisban látható, a használt programozási nyelv alapján.
Ajánlott cikkek
Ez egy útmutató a váltási nyilatkozathoz a C ++ kategóriában. Itt a C ++ kapcsolójának fogalmát, szintaxisát, működését és a kapcsoló állítás példáit tárgyaljuk. A további javasolt cikkeken keresztül további információkat is megtudhat -
- C ++ karakterlánc-funkciók
- Mi a C ++ sablon osztály?
- C ++ alkalmazások a valós világban
- Útmutató a Java esettanulmányhoz
- Útmutató a PHP kapcsoló nyilatkozatához