Introduzione all'istruzione Switch in C

Prima di imparare cos'è l'istruzione Switch in C, comprendiamo innanzitutto cosa è C.
C è un linguaggio di programmazione orientato alle procedure sviluppato da Dennis Ritchie. Lo scopo fondamentale dietro lo sviluppo del linguaggio C era di usarlo come linguaggio di programmazione del sistema, cioè per programmare un sistema operativo. Molte lingue prendono in prestito la loro sintassi da questo linguaggio C. C ++, ad esempio, è un'estensione o può essere considerata una versione aggiornata del linguaggio di programmazione C.

Che cos'è l'istruzione Switch in C?

Considera un caso in cui ti sono state date un mazzo di chiavi di dimensioni diverse. Ora ti viene chiesto di aprire una porta usando una delle chiavi di questo mazzo. Quindi quale sarà il tuo approccio a questo problema? È semplice, e hai indovinato bene, sceglierai una chiave e proverai a sbloccare la porta utilizzandola. Se questa chiave non apre la porta, prova con un'altra chiave. Il processo continua fino a quando non hai finalmente trovato la chiave che apre la porta. Dopo aver trovato la chiave e aver sbloccato la porta, ti fermi. Nel caso in cui se riesci a trovare la chiave nel primo tentativo, non continuerai a provare con le altre chiavi dopo, giusto?

Simile è il caso dell'istruzione switch. Questo esempio può aiutarti a comprendere facilmente la definizione e il flusso di base dell'istruzione switch. Il flusso e la funzionalità di base dell'istruzione switch rimangono gli stessi in tutti i linguaggi di programmazione. La differenza può essere vista solo nella sintassi generale basata sul linguaggio di programmazione utilizzato.

In un termine molto semplice, un'istruzione switch valuta un'espressione, la verifica e la confronta con i diversi casi scritti nel codice. Non appena viene trovata la corrispondenza con qualsiasi caso, il controllo entra in questo caso e inizia a eseguire le istruzioni scritte in questo caso fino a quando non viene rilevata un'istruzione break. Non appena appare un'istruzione break, l'istruzione switch termina e il controllo del programma esce da switch.

A volte può capitare che nessun caso corrisponda al valore dell'espressione. Per tali casi, menzioniamo un caso predefinito che verrà sempre eseguito nel caso in cui non venga trovata alcuna corrispondenza.

I casi in un blocco dell'istruzione switch sono rappresentati da numeri o stringhe diverse, noto come identificatore. Il valore dell'espressione o il valore fornito dall'utente viene confrontato con questi casi fino a quando non viene trovata la corrispondenza.

La sintassi per l'istruzione switch nel linguaggio di programmazione C è riportata di seguito:

sintassi:

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;

Esempio:

Questo esempio darà più chiarezza sull'uso dell'istruzione 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;
)

Produzione:

La tua performance è: risultato soddisfacente

Diagramma di flusso dell'istruzione Switch

Come funziona l'istruzione Switch in C

Cerchiamo di capire il flusso di controllo rappresentato nel diagramma di flusso sopra per ottenere una migliore comprensione del flusso di esecuzione.

Viene passata un'espressione con l'istruzione switch che è uguale a uno dei valori dei casi. Nel caso in cui il valore non sia uguale, viene eseguito il caso predefinito. Il valore di questa espressione viene quindi confrontato con l'identificatore del caso o il primo caso. Se il primo caso corrisponde, viene eseguito il blocco di codice associato al primo caso. Una volta riscontrata l'interruzione, l'esecuzione si interrompe e si esce dall'istruzione switch. Tuttavia, se il caso non corrisponde, l'esecuzione passa al caso successivo. Se questo caso corrisponde, quindi il secondo blocco di codice viene eseguito diversamente, il flusso controlla il caso successivo in modo simile. Infine, se nessun caso corrisponde, viene eseguito il blocco di codice predefinito.

Diamo un'occhiata ad alcuni altri esempi -

Esempio :

Questo esempio mostra l'uso dell'istruzione break in switch. Se l'istruzione break non viene specificata dopo il caso, il flusso di esecuzione continuerà fino a quando non incontra l'istruzione break.

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

Uscita :
Questo caso viene eseguito anche perché non c'è interruzione
Il numero è 40 o 50 o 60

Esempio:

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

Uscita :

Ciao

Esempio:

Dichiarazione switch nidificato.

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

Uscita :

Ciò dipenderà dai valori immessi dall'utente.

Uscita 1:

Inserisci il tuo ID: 300
Inserisci la tua password: 1000
Benvenuti nel portale

Uscita 2:
Inserisci il tuo ID: 100
Inserisci l'ID corretto

Uscita 3:
Inserisci il tuo ID: 300
Inserisci la tua password: 000
Inserisci la password corretta

Conclusione

Le istruzioni case switch sono un'istruzione controllata considerata come sostituto delle istruzioni if-else. È un'istruzione di diramazione a più vie che fornisce un modo per organizzare il flusso di esecuzione verso parti del codice in base al valore dell'espressione.

Articoli consigliati

Questa è stata una guida all'istruzione Switch in C. Qui discutiamo anche l'Introduzione e come funziona l'istruzione Switch in C. Puoi anche dare un'occhiata ai seguenti articoli per saperne di più -

  1. C ++ vs Java | Scopri la differenza
  2. Esempi di istruzione Switch in C ++
  3. Come funziona Case Statement in Java?
  4. Panoramica dell'istruzione switch PHP
  5. Rust vs C ++ | Differenze principali
  6. Guida completa all'istruzione Switch Python
  7. Guida per cambiare caso in PowerShell

Categoria: