The умовний оператор у C начебто схожий на оператор if-else, оскільки він дотримується того самого алгоритму, що й оператор if-else, але умовний оператор займає менше місця та допомагає написати оператори if-else у найкоротший спосіб. Він також відомий як тернарний оператор у C оскільки він працює з трьома операндами.
Синтаксис умовного/тернарного оператора в C
Умовний оператор може бути у формі
variable = Expression1 ? Expression2 : Expression3 ;>
Або синтаксис також може бути в цій формі
variable = (condition) ? Expression2 : Expression3 ;>
Або синтаксис також може бути в цій формі
(condition) ? (variable = Expression2) : (variable = Expression3) ;>

Умовний/тернарний оператор у C
Це можна візуалізувати в операторі if-else як:
if(Expression1) { variable = Expression2; } else { variable = Expression3; }> Оскільки умовний оператор «?:» використовує для роботи три операнди, тому вони також викликаються тернарні оператори .
Примітка. Потрійний оператор має третій найнижчий пріоритет, тому нам потрібно використовувати вирази, щоб уникнути помилок через неправильне керування пріоритетом операторів.
Робота умовного/тернарного оператора в C
Робота умовного оператора в C виглядає наступним чином:
- Крок 1: Вираз1 – це умова, яку потрібно оцінити. Крок 2A: Якщо умова ( Вираз1 ) тоді є Правдою Вираз2 буде виконано. Крок 2B: Якщо умова ( Вираз1 ) тоді є хибним Вираз3 буде виконано. Крок 3: Результати будуть повернуті.
Блок-схема умовного/тернарного оператора в C
Щоб краще зрозуміти роботу, ми можемо проаналізувати блок-схему умовного оператора, наведену нижче.

Блок-схема умовного/трійкового оператора в C
Приклади тернарного оператора C
Приклад 1: C Програма для збереження найбільшого з двох чисел за допомогою тернарного оператора
C
подвійний зв'язаний список
// C program to find largest among two> // numbers using ternary operator> > #include> > 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;> }> |
>
>Вихід
m is greater than n that is 5>4>
приклад 2: C Програма для перевірки того, чи є рік високосним за допомогою тернарного оператора
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> |
>
>Вихід
The year 1900 is not a leap year>
Висновок
Умовний оператор або тернарний оператор у C зазвичай використовується, коли нам потрібен короткий умовний код, наприклад, присвоєння значення змінній на основі умови. Його можна використовувати у великих умовах, але це зробить програму дуже складною та нечитабельною.
Поширені запитання щодо умовних/тернарних операторів у C
1. Що таке тернарний оператор у C?
Тернарний оператор у C — це умовний оператор, який працює з трьома операндами. Він працює подібно до оператора if-else і виконує код на основі вказаної умови. Його також називають умовним оператором
2. У чому перевага умовного оператора?
Це зменшує рядок коду, коли умова та оператори малі.