Menu
Coddy logo textTech

Operador Condicional Ternário

Parte da seção Fundamentals do Journey de C da Coddy — lição 29 de 63.

O operador condicional ternário é uma forma abreviada de expressar uma instrução if-else em uma única linha.

A sintaxe é:

condition ? value_if_true : value_if_false;

Vamos dar uma olhada em um exemplo. Primeiro, aqui está uma instrução if-else tradicional:

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

Agora, vamos reescrevê-lo usando o operador ternário:

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

Neste exemplo:

  • a > b é a condição
  • Se a condição for verdadeira, a é retornado
  • Se a condição for falsa, b é retornado

O operador ternário também pode ser aninhado, mas isso pode tornar o código mais difícil de ler:

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

Desafio

Fácil

Crie um programa que verifique se um número é positivo, negativo ou zero usando o operador condicional. O programa deve:

  1. Receber um número inteiro de entrada do usuário.
  2. Usar o operador condicional para determinar se o número é positivo, negativo ou zero.
  3. Imprimir o resultado no formato: "The number is [positive/negative/zero]".

Folha de consulta

O operador condicional ternário fornece uma maneira abreviada de expressar uma instrução if-else em uma única linha.

Sintaxe:

condition ? value_if_true : value_if_false;

Exemplo comparando o if-else tradicional com o operador ternário:

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

// Operador ternário
int max = (a > b) ? a : b;

O operador ternário pode ser aninhado, embora isso reduza a legibilidade:

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

Experimente você mesmo

#include <stdio.h>

int main() {
    int number;
    scanf("%d", &number);
    
    // Escreva seu código abaixo
    char* result = 
    
    printf("The number is %s\n", result);
    return 0;
}
quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Fundamentals