の C の条件演算子 これは、if-else ステートメントと同じアルゴリズムに従うため、if-else ステートメントに似ていますが、条件演算子は必要なスペースが少なく、可能な限り最短の方法で if-else ステートメントを作成するのに役立ちます。としても知られています Cの三項演算子 3 つのオペランドで動作するためです。
C の条件演算子/三項演算子の構文
条件演算子は次の形式で使用できます。
variable = Expression1 ? Expression2 : Expression3 ;>
または、構文は次の形式にすることもできます
variable = (condition) ? Expression2 : Expression3 ;>
または、構文はこの形式にすることもできます
(condition) ? (variable = Expression2) : (variable = Expression3) ;>

C の条件演算子/三項演算子
キャメルケースパイソン
これは、次のように if-else ステートメントとして視覚化できます。
if(Expression1) { variable = Expression2; } else { variable = Expression3; }>
条件演算子「?:」は 3 つのオペランドを必要とするため、これらは次のように呼ばれます。 三項演算子 。
注: 三項演算子の優先順位は 3 番目に低いため、不適切な演算子の優先順位管理によるエラーを回避できるような式を使用する必要があります。
C の条件演算子/三項演算子の働き
C の条件演算子の動作は次のとおりです。
- ステップ 1: Expression1 は評価される条件です。ステップ 2A: 条件 ( 式1 ) は True です 式2 実行されます。ステップ 2B : 条件 ( 式1 ) は false です 式3 実行されます。ステップ 3: 結果が返されます。
C の条件演算子/三項演算子のフローチャート
動作をよりよく理解するには、以下に示す条件演算子のフローチャートを分析します。

C の条件演算子/三項演算子のフローチャート
C の三項演算子の例
例 1: 三項演算子を使用して 2 つの数値の最大値を格納する C プログラム
C
// C program to find largest among two> // numbers using ternary operator> > #include> > int> main()> {> > int> m = 5, n = 4;> > > (m>ん)?>> 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 の条件演算子/三項演算子に関する FAQ
1. C の三項演算子とは何ですか?
C の三項演算子は、3 つのオペランドに作用する条件演算子です。これは if-else ステートメントと同様に機能し、指定された条件に基づいてコードを実行します。条件演算子とも呼ばれます
2. 条件演算子の利点は何ですか?
条件とステートメントが小さい場合、コード行が削減されます。