С имеет очень мощный оператор, который можно использовать вместо структуры if-then-else. Оператор ? имеет следующий вид:
выражение1 ? выражение2 : выражение3
где выражение1, выражение2 и выражениеЗ - это выражения.
Оператор ? работает следующим образом: вычисляется выражение1; если оно истинно, то вычисляется выражение2 и все выражение получает это значение; а если оно ложно, то вычисляется выражение3 и все выражение получает это значение. Например:
х = 10;
у = х > 9 ? 100 : 200;
В данном примере у получает значение 100. Если бы х было меньше, чем 9, то у получило бы значение 200. Ниже приведен фрагмент программы, выполняющий такие же действия, но с использованием операторов if/else:
х = 10;
if (х > 9) у = 100;
else у = 200;