logo

Operador condicional o ternario (?:) en C

El operador condicional en C es algo similar a la declaración if-else ya que sigue el mismo algoritmo que la declaración if-else pero el operador condicional ocupa menos espacio y ayuda a escribir las declaraciones if-else de la manera más corta posible. También se le conoce como el operador ternario en C ya que opera con tres operandos.

Sintaxis del operador condicional/ternario en C

El operador condicional puede tener la forma

 variable = Expression1  ?  Expression2  :  Expression3 ;>

O la sintaxis también puede ser de esta forma.



 variable = (condition)  ? Expression2  :  Expression3 ;>

O la sintaxis también puede tener esta forma.

 (condition)  ?  (variable = Expression2)  :  (variable = Expression3) ;>
operador condicional o ternario en c

Operador condicional/ternario en C

Se puede visualizar en una declaración if-else como:

constructor de cadenas java
if(Expression1) { variable = Expression2; } else { variable = Expression3; }>

Dado que el operador condicional '?:' requiere tres operandos para funcionar, por eso también se les llama operadores ternarios .

Nota: El operador ternario tiene la tercera precedencia más baja, por lo que debemos usar expresiones que puedan evitar errores debido a una gestión inadecuada de la precedencia del operador.

Trabajo del operador condicional/ternario en C

El funcionamiento del operador condicional en C es el siguiente:

    Paso 1: Expresión1 es la condición a evaluar. Paso 2A: Si la condición ( Expresión1 ) es cierto entonces Expresión2 será ejecutado. Paso 2B: Si la condición ( Expresión1 ) es falso entonces Expresión3 será ejecutado. Paso 3: Se devolverán los resultados.

Diagrama de flujo del operador condicional/ternario en C

Para comprender mejor el funcionamiento, podemos analizar el diagrama de flujo del operador condicional que se muestra a continuación.

diagrama de flujo del operador condicional/ternario en c

Diagrama de flujo del operador condicional/ternario en C

Ejemplos de operador ternario C

Ejemplo 1: Programa C para almacenar el mayor de los dos números usando el operador ternario

C


búsqueda de novios



// C program to find largest among two> // numbers using ternary operator> > #include> > int> main()> {> >int> m = 5, n = 4;> > >(m>norte)?>printf>(>'m is greater than n that is %d>%d'>,> >m, n)> >:>printf>(>'n is greater than m that is %d>%d'>,> >n, m);> > >return> 0;> }>

>

>

ejemplo de clase java
Producción

m is greater than n that is 5>4>

Ejemplo 2: C Programa para comprobar si un año es bisiesto utilizando el operador ternario

C




// C program to check whether a year is leap year or not> // using ternary operator> > #include> > int> main()> {> >int> yr = 1900;> > >(yr%4==0) ? (yr%100!=0?>printf>(>'The year %d is a leap year'>,yr)> >: (yr%400==0 ?>printf>(>'The year %d is a leap year'>,yr)> >:>printf>(>'The year %d is not a leap year'>,yr)))> >:>printf>(>'The year %d is not a leap year'>,yr);> >return> 0;> }> > //This code is contributed by Susobhan AKhuli>

>

>

Producción

The year 1900 is not a leap year>

Conclusión

El operador condicional u operador ternario en C se usa generalmente cuando necesitamos un código condicional corto como por ejemplo asignar valor a una variable según la condición. Puede usarse en condiciones más grandes pero hará que el programa sea muy complejo e ilegible.

¿Qué es el mapa hash de Java?

Preguntas frecuentes sobre operadores condicionales/ternarios en C

1. ¿Qué es el operador ternario en C?

El operador ternario en C es un operador condicional que trabaja con tres operandos. Funciona de manera similar a la declaración if-else y ejecuta el código según la condición especificada. También se le llama operador condicional.

2. ¿Cuál es la ventaja del operador condicional?

Reduce la línea de código cuando la condición y las declaraciones son pequeñas.