Introducere în declarația de comutare în C

Înainte de a afla ce este declarația Switch în C, să înțelegem mai întâi ce este C.
C este un limbaj de programare orientat spre proceduri dezvoltat de Dennis Ritchie. Scopul de bază din spatele dezvoltării limbajului C a fost utilizarea lui ca limbaj de programare a sistemului, adică pentru a programa un sistem de operare. Multe limbi își împrumută sintaxa din această limbă C. C ++, de exemplu, este o extensie sau poate fi considerată ca o versiune actualizată a limbajului de programare C.

Ce este declarația de comutare în C?

Luați în considerare un caz în care vi s-a oferit o grămadă de chei de diferite dimensiuni. Acum vi se cere să deschideți o ușă folosind una dintre tastele acestui grup. Deci, care va fi abordarea dvs. față de această problemă? Este simplu, și ai ghicit-o corect, vei alege o singură cheie și vei încerca să deblochezi ușa folosind-o. Dacă această cheie nu deschide ușa, încercați cu o altă cheie. Procesul continuă până când ați găsit în cele din urmă cheia care deblochează ușa. După găsirea cheii și ușa este deblocată, te oprești. În cazul în care, în prima încercare, puteți găsi cheia, nu veți continua să încercați cu celelalte taste după aceea, corect?

Similar este și cazul instrucțiunii switch. Acest exemplu vă poate ajuta să înțelegeți cu ușurință definiția de bază și fluxul instrucțiunii de comutare. Fluxul de bază și funcționalitatea instrucțiunii switch rămân aceleași în toate limbajele de programare. Diferența poate fi văzută doar în sintaxa generală bazată pe limbajul de programare utilizat.

Într-un termen foarte de bază, o instrucțiune switch evaluează o expresie, o testează și o compară cu mai multe cazuri scrise în cod. De îndată ce se găsește potrivirea cu orice caz, controlul intră în acest caz și începe să execute declarațiile scrise în acest caz până la întâlnirea unei declarații de pauză. Imediat ce apare o instrucțiune de pauză, instrucțiunea de comutare se încheie și controlul programului iese din comutare.

Uneori se poate întâmpla ca niciun caz să nu se potrivească cu valoarea expresiei. Pentru astfel de cazuri, menționăm un caz implicit care se va executa întotdeauna în cazul în care nu se găsește nicio potrivire.

Cazurile dintr-un bloc al instrucțiunii switch sunt reprezentate de diferite numere sau șiruri, care este cunoscut sub numele de identificator. Valoarea expresiei sau valoarea furnizată de utilizator este comparată cu aceste cazuri până la găsirea potrivirii.

Sintaxa pentru declarația switch în limbajul de programare C este dată mai jos-

sintaxa:

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;

Exemplu:

Acest exemplu va oferi mai multă claritate cu privire la utilizarea instrucțiunii switch
#include
int main () (
char grade_report = 'D';
printf("Your performance is : ");
switch(grade_report) (
case 'A' :
printf("Outstanding Result!\n" );
break;
case 'B' :
printf("Excellent Result!\n" );
break;
case 'C' :
printf("Good Result\n" );
break;
case 'D' :
printf("Satisfying Result\n" );
break;
case 'F' :
printf("Poor Result\n" );
break;
default :
printf("You did not appear for exam\n" );
)
return 0;
)

ieşire:

Performanța dvs. este: Rezultatul satisfăcător

Organigrama declarației de comutare

Cum funcționează declarația de comutare în C

Să înțelegem fluxul de control prezentat în schema de mai sus pentru a obține o mai bună înțelegere a fluxului de execuție.

O expresie este transmisă cu instrucțiunea switch care este egală cu una dintre valorile cazurilor. În cazul în care valoarea nu este egală, cazul implicit este executat. Valoarea acestei expresii este apoi comparată cu identificatorul cazului sau cu primul caz. Dacă primul caz se potrivește, atunci blocul de cod asociat cu primul caz este executat. După întâlnirea pauzei, execuția se oprește și veți ieși din instrucțiunea de comutare. Cu toate acestea, dacă cazul nu se potrivește, execuția trece la următorul caz. Dacă acest caz se potrivește, atunci al doilea bloc de cod se execută altfel, fluxul verifică următorul caz într-un mod similar. În cele din urmă, dacă niciun caz nu se potrivește, atunci blocul de cod implicit este executat.

Să aruncăm o privire asupra altor câteva exemple -

Exemplu :

Acest exemplu descrie utilizarea instrucțiunii de pauză în switch. Dacă instrucțiunea de pauză nu este specificată după caz, fluxul de execuție va continua până când va întâlni instrucțiunea de pauză.

#include
int main() (
int range_of_number=50;
switch (range_of_number) (
case 10:
case 20:
case 30:
printf("The number is 10 or 20 or 30 ");
break;
case 50:
case 55:printf("This case also executes because there is no break ");
printf("\n");
case 60:
printf("The number is either 40 or 50 or 60");
break;
default:
printf("The number is greater than 60");))

Rezultat :
Acest caz se execută și pentru că nu există nicio pauză
Numărul este fie 40, fie 50, fie 60

Exemplu:

#include
int main()
(
int x = 10, y = 5;
switch(x==y && x+y<10)
(
case 1:
printf("hi");
break;
case 0:
printf("bye");
break;
default:
printf(" Hello bye ");
) )

Rezultat :

pa

Exemplu:

Declarație de comutator cuibărit.

#include
int main() (
int ID = 300;
int password = 1000;
printf("Enter Your ID:\n ");
scanf("%d", & ID);
switch (ID) (
case 300:
printf("Enter your password:\n ");
scanf("%d", & password);
switch (password) (
case 1000:
printf("Welcome to the portal\n");
break;
default:
printf("Enter correct password");
break;
)
break;
default:
printf("Enter correct ID");
break;
)
)

Rezultat :

Aceasta va depinde de valorile introduse de utilizator.

Rezultat 1:

Introdu ID-ul tău: 300
Introduceți parola: 1000
Bine ați venit pe portal

Rezultat 2:
Introdu ID-ul tău: 100
Introduceți un ID corect

Rezultat 3:
Introdu ID-ul tău: 300
Introduceți parola: 000
Introduceți parola corectă

Concluzie

Instrucțiunile de caz comutare sunt o declarație controlată care este considerată ca un substitut pentru declarațiile if-else. Este o declarație de ramură multiway care oferă o modalitate de a organiza fluxul de execuție către părți de cod pe baza valorii expresiei.

Articole recomandate

Acesta a fost un ghid pentru declarația de comutare din C. Aici vom discuta, de asemenea, Introducerea și modul în care schimbarea declarației în C. Puteți, de asemenea, să vă uitați la articolele următoare pentru a afla mai multe -

  1. C ++ vs Java | Aflați diferența
  2. Exemple de declarații de comutare în C ++
  3. Cum funcționează Declarația de caz în Java?
  4. Prezentare generală a declarației de comutare PHP
  5. Rust vs C ++ | Diferențe de top
  6. Ghid complet pentru declarația comutatorului Python
  7. Ghid pentru schimbarea carcasei în PowerShell