The operator warunkowy w C jest trochę podobne do instrukcji if-else, ponieważ wykorzystuje ten sam algorytm, co instrukcja if-else, ale operator warunkowy zajmuje mniej miejsca i pomaga pisać instrukcje if-else w możliwie najkrótszy sposób. Znany jest również jako operator trójskładnikowy w C ponieważ działa na trzech operandach.
Składnia operatora warunkowego/trójskładnikowego w C
Operator warunkowy może mieć postać
variable = Expression1 ? Expression2 : Expression3 ;>
Lub składnia może być również w tej formie
variable = (condition) ? Expression2 : Expression3 ;>
Lub składnia może być również w tej formie
(condition) ? (variable = Expression2) : (variable = Expression3) ;>

Operator warunkowy/trójskładnikowy w C
Można to zwizualizować w instrukcji if-else jako:
if(Expression1) { variable = Expression2; } else { variable = Expression3; }>
Ponieważ operator warunkowy „?:” wymaga do działania trzech operandów, dlatego są one również wywoływane operatory trójskładnikowe .
pełna forma ctc
Uwaga: Operator trójskładnikowy ma trzeci najniższy priorytet, dlatego musimy używać wyrażeń w taki sposób, aby uniknąć błędów wynikających z niewłaściwego zarządzania pierwszeństwem operatorów.
Działanie operatora warunkowego/trójskładnikowego w C
Działanie operatora warunkowego w C wygląda następująco:
- Krok 1: Wyrażenie 1 jest warunkiem do oceny. Krok 2A: Jeśli warunek ( Wyrażenie 1 ) jest zatem prawdą Wyrażenie2 zostanie wykonany. Krok 2B: Jeśli warunek ( Wyrażenie 1 ) jest zatem fałszywe Wyrażenie 3 zostanie wykonany. Krok 3: Wyniki zostaną zwrócone.
Schemat blokowy operatora warunkowego/trójskładnikowego w C
Aby lepiej zrozumieć działanie, możemy przeanalizować schemat działania operatora warunkowego podany poniżej.

Schemat blokowy operatora warunkowego/trójskładnikowego w C
Przykłady operatora trójskładnikowego C
Przykład 1: Program w C przechowujący największą z dwóch liczb przy użyciu operatora trójskładnikowego
C
pętla for w 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;> }> |
>
data lokalna
>Wyjście
m is greater than n that is 5>4>
Przykład 2: Program w C sprawdzający, czy dany rok jest rokiem przestępnym, przy użyciu operatora trójskładnikowego
C
kolejka priorytetowa 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> |
>
następny skaner Java
>Wyjście
The year 1900 is not a leap year>
Wniosek
Operator warunkowy lub operator trójskładnikowy w C jest zwykle używany, gdy potrzebujemy krótkiego kodu warunkowego, na przykład przypisując wartość zmiennej na podstawie warunku. Można go używać w większych warunkach, ale spowoduje to, że program będzie bardzo skomplikowany i nieczytelny.
Często zadawane pytania dotyczące operatorów warunkowych/trójskładnikowych w C
1. Co to jest operator trójskładnikowy w C?
Operator trójskładnikowy w C jest operatorem warunkowym, który działa na trzech operandach. Działa podobnie do instrukcji if-else i wykonuje kod w oparciu o określony warunek. Nazywa się go także operatorem warunkowym
2. Jaka jest zaleta operatora warunkowego?
Zmniejsza linię kodu, gdy warunek i instrukcje są małe.