ESPRESSIONE CONDIZIONALE

Il linguaggio C offre anche un'espressione condizionale avente forma
EXPRESSION1 ? EXPRESSION2 : EXPRESSION3
EXPRESSION1
è un'espressione di tipo intero (ricordare che il C non ha il tipo booleano, e che tale tipo è simulato con il tipo intero)
EXPRESSION2 ed EXPRESSION3
sono due espressioni aventi lo stesso tipo (senza restrizioni su tale tipo)
Se il valore di EXPRESSION1 è diverso da 0, allora il valore di tale espressione è il valore di EXPRESSION2, altrimenti quello di EXPRESSION3.

ESEMPI

#include <stdio.h>
/* calcola il massimo fra tre numeri */
main(){
    float a,b,c;
    
    scanf("%f %f %f",&a, &b, &c);
    printf("Il massimo tra %f, %f e %f e\' %f.\n",a,b,c,
    (a > b) ? ( (a > c) ? a : c) :
              ( (b > c) ? b : c ));

}

#include 

/* controlla se un numero è pari */
main(){
    int num;
    
    scanf("%d",&num);
    printf("Il numero %d ",num);
    printf(((num % 2) == 0)? "e\' pari.":"non e\' pari.");

}

ESERCIZIO

  1. Modificare i programmi visti precedentemente utilizzando, quando possibile, il costrutto di espressione condizionale.