为什么这道C语言题选C不选D呀

如题所述

分开写你就明白了 说实在的出这种题的老师绝对是脑残= =

a = a *a>b?a:b

t = a;
a>b?a:b 是a大于b 取a 如果a小于b 取 b 这里a是小于b的所以取b

a = a*b = 7*9 = 63 ;
t = a
t = 63追问

懂了

温馨提示:答案为网友推荐,仅供参考
第1个回答  2017-06-21
表达式中不能嵌套return语句追问

没有啊

为什么这一题不选D呀

第2个回答  2017-06-21
条件运算优先于赋值运算,所以
t=a*=a>b?a:b 等价于 t=a*=(a>b?a:b)
(a>b?a:b)的结果是b的值(因为a>b不成立,所以取冒号右边的值),也就是9,于是就有
t=a*=9,展开就是
t=a=a*9
t=a=63
t=63