C Tutorial/Operator/Ternary operator

Материал из C\C++ эксперт
Версия от 10:32, 25 мая 2010; Admin (обсуждение | вклад) (1 версия: Импорт контента...)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к: навигация, поиск

Nested ternary operator

#include <stdio.h>
int main(void)
{
  const double unit_price = 3.50;
  const double discount1 = 0.05; 
  const double discount2 = 0.1;  
  const double discount3 = 0.15;
  double total_price = 0.0;
  int quantity = 10;
  total_price = quantity*unit_price*(1.0 -
                   (quantity>50 ? discount3 : (
                           quantity>20 ? discount2 : (
                                  quantity>10 ? discount1 : 0.0))));
  printf("The price for %d is $%.2f\n", quantity, total_price);
  return 0;
}
The price for 10 is $35.00