Skip to content
Related Articles

Related Articles

Improve Article

Conditional or Ternary Operator (?:) in C/C++

  • Difficulty Level : Basic
  • Last Updated : 29 Oct, 2020

The conditional operator is kind of similar to the if-else statement as it does follow the same algorithm as of if-else statement but the conditional operator takes less space and helps to write the if-else statements in the shortest way possible.

Syntax: 
The conditional operator is of the form  

variable = Expression1 ? Expression2 : Expression3

It can be visualized into if-else statement as:  

if(Expression1)
{
    variable = Expression2;
}
else
{
    variable = Expression3;
}

Since the Conditional Operator ‘?:’ takes three operands to work, hence they are also called ternary operators.
Working: 
Here, Expression1 is the condition to be evaluated. If the condition(Expression1) is True then Expression2 will be executed and the result will be returned. Otherwise, if the condition(Expression1) is false then Expression3 will be executed and the result will be returned.



Example: Program to Store the greatest of the two Number. 

C




// C program to find largest among two
// numbers using ternary operator
 
#include <stdio.h>
 
int main()
{
    int m = 5, n = 4;
 
    (m > n) ? 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;
}

C++




// C++ program to find largest among two
// numbers using ternary operator
 
#include <iostream>
using namespace std;
 
int main()
{
    // variable declaration
    int n1 = 5, n2 = 10, max;
 
    // Largest among n1 and n2
    max = (n1 > n2) ? n1 : n2;
 
    // Print the largest number
    cout << "Largest number between " << n1
                           << " and " << n2
                           << " is " << max;
 
    return 0;
}
Output
m is greater than n that is 5 > 4

Want to learn from the best curated videos and practice problems, check out the C++ Foundation Course for Basic to Advanced C++ and C++ STL Course for foundation plus STL.  To complete your preparation from learning a language to DS Algo and many more,  please refer Complete Interview Preparation Course.



My Personal Notes arrow_drop_up
Recommended Articles
Page :