logo

Podmienený alebo ternárny operátor (?:) v C

The podmienený operátor v C je podobný príkazu if-else, pretože sa riadi rovnakým algoritmom ako príkaz if-else, ale podmienený operátor zaberá menej miesta a pomáha písať príkazy if-else čo najkratším možným spôsobom. Je tiež známy ako ternárny operátor v C keďže funguje na troch operandoch.

Syntax podmieneného/ternárneho operátora v C

Podmienený operátor môže byť vo forme

formát reťazca
 variable = Expression1  ?  Expression2  :  Expression3 ;>

Alebo syntax môže byť aj v tejto forme



 variable = (condition)  ? Expression2  :  Expression3 ;>

Alebo syntax môže byť tiež v tejto forme

 (condition)  ?  (variable = Expression2)  :  (variable = Expression3) ;>
podmienený alebo ternárny operátor v c

Podmienený/ternárny operátor v C

Dá sa vizualizovať do príkazu if-else ako:

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

Keďže podmienený operátor „?:“ potrebuje na fungovanie tri operandy, preto sa tiež nazývajú ternárnych operátorov .

Poznámka: Ternárny operátor má tretiu najnižšiu prioritu, takže musíme používať výrazy tak, aby sme sa vyhli chybám v dôsledku nesprávneho riadenia priority operátorov.

Práca podmieneného/ternárneho operátora v C

Fungovanie podmieneného operátora v C je nasledovné:

strunový split bash
    Krok 1: Výraz1 je podmienka, ktorá sa má vyhodnotiť. Krok 2A: Ak je podmienka ( Výraz1 ) je teda pravda Výraz2 bude vykonaná. Krok 2B: Ak je podmienka( Výraz1 ) je potom nepravda Výraz 3 bude vykonaná. Krok 3: Výsledky budú vrátené.

Vývojový diagram podmieneného/ternárneho operátora v C

Aby sme lepšie pochopili fungovanie, môžeme analyzovať vývojový diagram podmieneného operátora uvedený nižšie.

vývojový diagram podmieneného/ternárneho operátora v c

Vývojový diagram podmieneného/ternárneho operátora v C

Príklady ternárneho operátora C

Príklad 1: C Program na uloženie najväčšieho z dvoch čísel pomocou ternárneho operátora

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;> }>

>

skener v jave

>

Výkon

m is greater than n that is 5>4>

Príklad 2: C Program na kontrolu, či je rok priestupný pomocou ternárneho operátora

C

struny v 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>

>

čiastočná diferenciácia v latexe

>

Výkon

The year 1900 is not a leap year>

Záver

Podmienený operátor alebo ternárny operátor v C sa vo všeobecnosti používa, keď potrebujeme krátky podmienený kód, ako je priradenie hodnoty premennej na základe podmienky. Môže byť použitý vo väčších podmienkach, ale program bude veľmi zložitý a nečitateľný.

Časté otázky o podmienených/ternárnych operátoroch v C

1. Aký je ternárny operátor v C?

Ternárny operátor v C je podmienený operátor, ktorý funguje na troch operandoch. Funguje podobne ako príkaz if-else a vykoná kód na základe zadanej podmienky. Nazýva sa aj podmienený operátor

2. Aká je výhoda podmieneného operátora?

Znižuje riadok kódu, keď sú podmienka a príkazy malé.