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
- #include <stdio.h>
- int main() {
- int a=3;
- int b=4;
- if ( a > b ) {
- printf("a maggiore di b");
- } else {
- if ( a<b) {
- printf("a minore di b");
- }
- }
- return 0;
- }
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.