展开全部
应该选择B,--a执行后肯定是3,--a==b++这个是成立的,因为--a是先自减后赋值,而b++是先赋值后自增,也就是执行那个三元运算符的表达式后,b的值是4,但是你输出的时候加一,所以b的值是5,又--a==b++成立,所以只输出a的值,a的值在执行完这个三元运算符后,结果是3
追问
(--a==b++)不是只能判定是1还是0来确定:两边是哪个的数吗
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2020-01-15
展开全部
选B x=3
a 初始值为4 b初始值为3
--a 先进行减一 再参与运算,也就相当于a=3
b++ 先参与运算,再加一 相当于此时b = 3 参与跟 --a的相等运算
--a == b++ 返回结果为true
x = a = 3
执行完 x = (--a==b++)? a: b+1; 后 b值就是4
a 初始值为4 b初始值为3
--a 先进行减一 再参与运算,也就相当于a=3
b++ 先参与运算,再加一 相当于此时b = 3 参与跟 --a的相等运算
--a == b++ 返回结果为true
x = a = 3
执行完 x = (--a==b++)? a: b+1; 后 b值就是4
追问
最后一步什么意思?(--a==b--)3==3成立,不是应该选择?右边的式子冒号左边的输出吗
追答
对啊,冒号左边的式子 不就是 a 么
--a == b++ 这步运算结果 已经将 a值更新成3以后参与的运算
直接返回 x = a = 3 答案就是 3 啊
我的答案的最后一句是告诉你 运行结束后b的值是 4
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询