Kapcsolási nyilatkozat C ++-ban Hogyan működik - Szintaxis és példák

Tartalomjegyzék:

Anonim

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:

  1. Az esetcímkék lehetnek egész számok vagy karakterek, és egyedinek kell lenniük
  2. Az esetcímkék mindig pontosvesszővel zárulnak.
  3. Annak ellenére, hogy az alapértelmezett esetcímke nem kötelező, legfeljebb az egyik lehet, ha meg van határozva.
  4. 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.
  5. Az alapértelmezett esetcímkének nincs meghatározott helye.
  6. 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 -

  1. C ++ karakterlánc-funkciók
  2. Mi a C ++ sablon osztály?
  3. C ++ alkalmazások a valós világban
  4. Útmutató a Java esettanulmányhoz
  5. Útmutató a PHP kapcsoló nyilatkozatához