If annidate in linguaggio C

Le IF annidate sono istruzioni condizionali poste all'interno di altre strutture IF.

Un esempio pratico

Questo codice è un esempio pratico di IF annidata

  1. #include <stdio.h>
  2. int main() {
  3. int a=3;
  4. int b=4;
  5. if ( a > b ) {
  6. printf("a maggiore di b");
  7. } else {
  8. if ( a<b) {
  9. printf("a minore di b");
  10. }
  11. }
  12. return 0;
  13. }

La IF esterna verifica se il valore della variabile a è maggiore di b.

Poiché a è minore di b, la condizione è falsa e il flusso passa alla clausola ELSE (altrimenti).

Nella else ho inserito un'altra IF interna che verifica se il valore di a è minore di b.

Nota. In questo modo il programma stampa "a maggiore di b" se a>b oppure "a minore di b" se a<b. Se le variabili a=b hanno lo stesso valore, il programma non stampa nulla.

Non c'è limite al numero di IF annidate. Tuttavia, è meglio non esagerare perché l'uso delle if annidate riduce la leggibilità del codice sorgente.

E così via.

 


 

Segnalami un errore, un refuso o un suggerimento per migliorare gli appunti

FacebookTwitterLinkedinLinkedin
knowledge base

Libri di approfondimento

Le strutture di selezione nel linguaggio C