Izjava o prebacivanju u C ++ - Kako to djeluje - Sintaksa i primjeri

Sadržaj:

Anonim

Što je izjava o prebacivanju u C ++?

Izjave slučaja prekidača su kontrolirana izjava koja se smatra zamjenom ako-else izjavama. Izvod je višestruke grane koji pruža način organiziranja tijeka izvršenja u dijelove koda na temelju vrijednosti izraza. U najosnovnijem izrazu, preklopna izjava procjenjuje izraz, testira ga i uspoređuje s nekoliko slučajeva napisanih u kodu. Čim se nadje bilo koji slučaj sa bilo kojim slučajem, kontrola će ući u taj slučaj i započeti izvršavati izjave napisane u tom slučaju dok se ne nađe izjava o prekidu. Čim se pojavi izjava o prekidu, izjava prekidača prestaje i kontrola programa izlazi iz prekidača.

Ponekad se može desiti da nijedan slučaj ne odgovara vrijednosti izraza. Za takve slučajeve spominjemo zadani slučaj koji će se uvijek izvršiti u slučaju da ne bude pronađeno podudaranje. Slučajevi u bloku preklopne izjave predstavljeni su različitim brojevima ili nizom, što je poznato kao identifikator. Vrijednost izraza ili vrijednosti koju pruža korisnik uspoređuje se s tim slučajevima dok se ne nađe podudaranje.

Sintaksa izjave preklopnika C ++

Sintaksa za izjavu o prebacivanju u programskom jeziku C ++ navedena je u nastavku-

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 korištenju Izjave o prebacivanju morate imati na umu sljedeće stvari:

  1. Oznake predmeta mogu biti cijeli broj ili znak i trebaju biti jedinstvene
  2. Oznake kućišta uvijek završavaju zarezom.
  3. Iako zadana oznaka velikih slova nije obvezna, ona može imati najviše ako je definirana.
  4. Za uklanjanje kontrole iz petlje potrebna vam je izjava o prekidu, a u protivnom će se izvršiti svi slučajevi prije nego što se prekid izvrši.
  5. Zadana naljepnica nema određenog položaja.
  6. Izjava o prebacivanju također se može ugniježditi.

Dijagram dijagrama stanja preklopnika

Kako Switch Statement djeluje na C ++?

Razjasnimo tijek kontrole prikazan na gornjem dijagramu, kako bismo stekli bolje razumijevanje tijeka izvršenja.

Izraz se prenosi s iskazom sklopke koja je jednaka jednoj od vrijednosti slučajeva. U slučaju da vrijednost nije jednaka, izvršava se zadani slučaj. Vrijednost ovog izraza zatim se uspoređuje s identifikatorom slučaja ili prvim slučajem. Ako se prvi slučaj podudara, tada se izvršava blok koda povezan s prvim slučajem. Jednom kada dođe do prekida, izvršenje se zaustavlja i izaći ćete iz izjave prekidača. Međutim, ako se slučaj ne podudara, izvršenje prelazi na sljedeći slučaj. Ako se ovaj slučaj podudara, tada se drugi blok koda izvršava na drugi način, protok provjerava sljedeći slučaj na sličan način. Na kraju, ako nijedan slučaj ne odgovara, tada se izvršava zadani blok koda.

Primjeri izjave o prebacivanju u C ++

Omogućuje nam nekoliko primjera izjave o prebacivanju u C ++.

Primjer 1

Ovaj će primjer dati više jasnoće upotrebe izjava o prebacivanju.

#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;
)

Izlaz:

Vaša izvedba je: Zadovoljavajući rezultat

Primjer 2

Ovaj primjer prikazuje upotrebu iskaza preloma u sklopci. Ako izjava o prekidu nije navedena nakon slučaja, tijek izvršenja nastavit će se sve dok ne nađe izjavu o prekidu.

#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; ))

Izlaz:

Ovaj se slučaj također izvršava jer nema prekida
Broj je ili 40, ili 50, ili 60

Primjer 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;
))

Izlaz:

Pozdrav

Primjer 4

Uglašeni prekidač

#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;
))

Izlaz:

To će ovisiti o vrijednostima koje je unijeo korisnik.

Izlaz 1:

Unesite svoj ID: 300
Unesite svoju lozinku: 1000
Dobrodošli na portal

Izlaz 2:

Unesite svoj ID: 100
Unesite ispravan ID

Izlaz 3:

Unesite svoj ID: 300
Unesite svoju lozinku: 000
Unesite ispravnu lozinku

Zaključak

Morate znati da osnovni tijek i funkcionalnost izjava preklopnika ostaju isti u svim programskim jezicima. Razlika se vidi samo u općoj sintaksi na temelju korištenog programskog jezika.

Preporučeni članci

Ovo je vodič za Izjavu o prebacivanju na C ++. Ovdje smo raspravljali o konceptu, sintaksi, radu i primjerima izjava o prebacivanju u C ++. Možete i proći naše druge predložene članke da biste saznali više -

  1. C ++ string-funkcije
  2. Što je klasa predložaka u C ++?
  3. Primjene C ++ u stvarnom svijetu
  4. Vodič za prikaz slučaja na Javi
  5. Vodič za PHP Izjavu o sklopci