Istruzione di selezione

L’istruzione di selezione è uno dei principali costrutti della programmazione imperativa e permette di scegliere fra due strade, in base alla condizione che viene specificata.

In linguaggio C, il costrutto di selezione, viene implementato attraverso l’istruzione if…else, cioè se…altrimenti.

Questo costrutto può presentarsi senza il ramo altrimenti, oppure ci possono essere dei rami if a cascata.

Sintassi Istruzione di selezione

If

La sintassi dell’istruzione if è questa:

if (<Condizione>)

  { 

       <Istruzione/i da eseguire se il valore di Condizione è vera>

   } 

N.B. Non si usano le parentesi graffe se l’istruzione da eseguire è una sola.

Quindi se la condizione è vera eseguiamo le istruzioni, invece omettiamo di eseguire delle istruzioni se la condizione è falsa. Infatti abbiamo solo un if senza l’else.

Facciamo dunque un esempio:

if (a>b)

printf(“a è maggiore di b”);

Cioè semplicemente se a è maggiore di b, scriviamo “a è maggiore di b”.

Oppure, possono esserci anche più istruzioni, ed in tal caso sono obbligatorie le parentesi graffe:

if (a>b)

{
printf(“questo programma dice: “);
printf(“a maggiore di b”);
}

if … else

La sintassi dell’istruzione if else è la seguente:

if (<Condizione>)
     { 
         <Istruzione/i da eseguire se il valore di Condizione è true>
    } 
else
     { 
         <Istruzione/i da eseguire se il valore di Condizione è false>
      } 

Quindi se la condizione è vera eseguiamo delle istruzioni, altrimenti ne eseguiamo delle altre.

Facciamo quindi un esempio:

if (a>b)

printf(“a è maggiore di b”);

else

printf(“a non è maggiore di b”);

if else if …

La sintassi dell’istruzione if …else if è la seguente:

if (<Condizione>)

    {
        <Istruzione/i da eseguire se il valore di Condizione è true>
     }

else if (<Condizione2>)
    { 
         <Istruzione/i da eseguire se il valore di Condizione è false e    Condizione2 è vera>
    } 

else if (<Condizione3>)
    {
      <Istruzione/i da eseguire se il valore di Condizione2 è false e Condizione3 è vera>
    }
...
else
  {
     <Istruzione/i da eseguire se il valore di Condizione2 è false e   Condizione3 è vera>
  }

Facciamo un semplice esempio:

if (a>b)

printf(“a maggiore di b\n”);

else if(a<b)

printf(“a e’ minore di b\n”);

else

printf(“a e b sono uguali\n”);

 

if annidati

All’interno di un’istruzione if è possibile inserire qualsiasi tipo di istruzione anche una nuova istruzione if, si parla in questo caso di if annidate.

Facciamo dunque un esempio:

if (voto<10)

if (voto<6)

printf(“Mi spiace ma non sei sufficiente”);

else printf(“Bravo!”);


Alcuni link utili

Introduzione al linguaggio C

Le variabili in C

Le costanti in C

Printf

Tipi di operatori

Operatori di confronto

Stdin

Le funzioni di input e output

Autore dell'articolo: Cristina

Avatar per Coding Creativo

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *