问题 单项选择题

有以下程序段
int k=0, a=1, b=2, c=3;
k=a<b b:a; k=k>c c:k;
执行该程序段后,k的值是
A) 3 B) 2 C) 1 D) 0

答案

参考答案:B

解析: 本题考查的知识点是条件表达式.条件运算符:是C语言中唯一的三目运算符,它的规则是先计算左边运算分量,如果为“真”(非0),则返回中间运算分量的值,否则返回右边运算分量的值。本题中因为a<b为“真”,所以第1个条件表达式的值为b的值2,所以k=2。然后又因为k>c为“假’,所以第2个表达式的值为k的值2。所以本题应该选择B。

单项选择题
单项选择题