Menu
Coddy logo textTech

Operatore condizionale ternario

Fa parte della sezione Fondamenti del percorso C di Coddy. Lezione 29 di 63.

L’operatore condizionale ternario è un modo abbreviato per esprimere un’istruzione if-else su una singola riga.

La sintassi è:

condition ? value_if_true : value_if_false;

Vediamo un esempio. Per prima cosa, ecco una tradizionale istruzione if-else:

int max;
if (a > b) {
    max = a;
} else {
    max = b;
}

Ora riscriviamolo usando l'operatore ternario:

int max = (a > b) ? a : b;

In questo esempio:

  • a > b è la condizione
  • Se la condizione è vera, viene restituito a
  • Se la condizione è falsa, viene restituito b

Anche l'operatore ternario può essere annidato, ma questo può rendere il codice più difficile da leggere:

int x = (a > b) ? ((a > c) ? a : c) : ((b > c) ? b : c);
challenge icon

Sfida

Facile

Crea un programma che controlli se un numero è positivo, negativo o zero usando l'operatore condizionale. Il programma deve:

  1. Acquisire un numero intero dall'utente.
  2. Usare l'operatore condizionale per determinare se il numero è positivo, negativo o zero.
  3. Stampare il risultato nel formato: "The number is [positive/negative/zero]".

Provalo tu

#include <stdio.h>

int main() {
    int number;
    scanf("%d", &number);
    
    // Scrivi il tuo codice qui sotto
    // Sostituisci il testo segnaposto con un'espressione condizionale
    char* result = "zero";
    
    printf("The number is %s\n", result);
    return 0;
}
quiz iconMettiti alla prova

Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.

Tutte le lezioni di Fondamenti

Esercitati da solo: Compilatore C online