三目运算也叫条件运算或三元运算,可以实现简单if语句的功能,但是书写更简洁。
语法: 表达式一? 表达式二: 表达式三
先计算表达式一的值,如果为真,整个表达式的结果为表达式二的值,如果为假,整个表达式的结果为表达式三的值。
int a,b,c;
a=7;
b=6;
c=(a>b)?a:b;
等同于
if (a>b) c=a;
else c=b;
三目运算表达式可以嵌套使用,但是,过于复杂的三目运算表达式不方便理解。
比如判断year是不是闰年,是则返回1,不是返回0。
int year;
year=(year%100==0)?(year%400==0?1:0):(year%4==0?1:0)
、普通年能被4整除且不能被100整除的为闰年。
、世纪年能被400整除的是闰年。
、对于数值很大的年份,这年如果能整除3200,并且能整除172800则是闰年。如172800年是闰年,86400年不是闰年。