若有说明语句:int x=1,y=0,写出各表达式++x*--x==y?12%5:'x' 的结果。
若有说明语句:intx=1,y=0,写出各表达式++x*--x==y?12%5:'x'的结果。...
若有说明语句:int x=1,y=0,写出各表达式++x*--x==y?12%5:'x' 的结果。
展开
1个回答
展开全部
1,0 .。。
表达式里没有 赋值语句。 所以只是简单的 ++x --x y没有改变 等于没任何改变
表达式里没有 赋值语句。 所以只是简单的 ++x --x y没有改变 等于没任何改变
追问
那如果是这个呢:x-->(y+x)?10:12.5>y++?'A':'Z'
追答
这里 >的优先级 高于 ?:运算
所以是 先算 x-- > (y+x) 是false。
?:运算的话 ?前false的话是算 :后的语句 就是 12.5>y++?'A':'z' 这里没有赋值 所以等于 y++
所以应该是 x-- y++ 最后0,1
注意的是 第一个?:运算符 如果 x-- > (y+x) 是true的话(当然 这道题目是false) 就不会算 12.5>y++?'A':'z' 就没有y++。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询