C ++ | Вложенный тернарный оператор

Опубликовано: 4 Декабря, 2021

Тернарный оператор, также известный как условный оператор, использует три операнда для выполнения операции.

Синтаксис:

 op1? op2: op3;

Вложенный тернарный оператор: тернарный оператор может быть вложенным. Вложенный тернарный оператор может иметь множество форм, например:

  • а? до н.э
  • а? до н.э ? d: e? f: g? Привет
  • а? б? c: d: e

Давайте разберемся с синтаксисами один за другим:

  1. а? b: c => Этот тернарный оператор похож на оператор if-else. Таким образом, это может быть выражено в форме оператора if-else.
    Выражение с использованием тернарного оператора:

     а? до н.э

    Выражение с использованием оператора if else:

     если ) 
        затем b выполнить
    еще 
        c выполнить

    Пример:

    // C++ program to illustrate
    // nested ternary operators
    #include <bits/stdc++.h>
    using namespace std;
    int main()
    {
    cout << "Execute expression using"
    << " ternary operator: " ;
    // Execute expression using
    // ternary operator
    int a = 2 > 5 ? 2 : 5;
    cout << a << endl;
    cout << "Execute expression using "
    << "if else statement: " ;
    // Execute expression using if else
    if ( 2 > 5)
    cout << "2" ;
    else
    cout << "5" ;
    return 0;
    }
    Выход:
    Выполнить выражение с использованием тернарного оператора: 5
    Выполнить выражение, используя оператор if else: 5
    
  2. а? до н.э ? d: e? f: g? h: i => Этот вложенный тернарный оператор можно разбить на инструкции if, else и else-if. Выражение может разбиваться на меньшие части в тернарном операторе и операторе if else, которые приведены ниже:
    Выражение с использованием тернарного оператора:
     а? б
        : c? d
        : e? ж
        : грамм ? час
        : я

    Выражение с использованием оператора if else:

     если а, то б
        иначе, если c, то d
        иначе, если e, то f
        иначе если g, то h
        иначе я 
    // C++ program to illustrate
    // nested ternary operators
    #include <bits/stdc++.h>
    using namespace std;
    int main()
    {
    cout << "Execute expression using "
    << "ternary operator: " ;
    int a = 2 > 3 ? 2 : 3 > 4 ? 3 : 4;
    cout << a << endl;
    cout << "Execute expression using "
    << "if else statement: " ;
    if ( 2 > 3 )
    cout << "2" ;
    else if ( 3 > 4 )
    cout << "3" ;
    else
    cout << "4" ;
    return 0;
    }
    Выход:
    Выполнить выражение с использованием тернарного оператора: 4
    Выполнить выражение, используя оператор if else: 4
    
  3. а? б? c: d: e => Ниже приведено расширение выражения с использованием тернарного оператора и оператора if else.
    Выражение с использованием тернарного оператора:
     а?
          б? c
        : d
    : e

    Выражение с использованием оператора if else:

     если )
        если (б)
            c выполнить
        еще 
            d выполнить
    еще 
        е выполнить 
    // C++ program to illustrate
    // nested ternary operators
    #include <bits/stdc++.h>
    using namespace std;
    int main()
    {
    cout << "Execute expression using "
    << "ternary operator: " ;
    int a = 4 > 3 ? 2 > 4 ? 2 : 4 : 3;
    cout << a << endl;
    cout << "Execute expression using "
    << "if else statement: " ;
    if ( 4 > 3 )
    if ( 2 > 4 )
    cout << "2" ;
    else
    cout << "4" ;
    else
    cout << "3" ;
    return 0;
    }
    Выход:
    Выполнить выражение с использованием тернарного оператора: 4
    Выполнить выражение, используя оператор if else: 4
    
Хотите узнать о лучших видео и практических задачах, ознакомьтесь с базовым курсом C ++ для базового и продвинутого уровня C ++ и курсом C ++ STL для базового уровня плюс STL. Чтобы завершить подготовку от изучения языка к DS Algo и многому другому, см. Полный курс подготовки к собеседованию .