int x=1,y=3,z;执行语句z=x>y?++x:y--;后,y和z的值为多少?为什么?

 我来答
在世张辽
2014-11-29 · TA获得超过3635个赞
知道答主
回答量:115
采纳率:0%
帮助的人:62.5万
展开全部
根据优先级加等效括号:
z=[x>y?(++x):(y--)];
++x 返回x+1=1+1=2同时x变为2
y--返回y=3同时y变为2
x>y即2>2为假,问号运算符的结果取冒号右边的(y--)返回值,也就是2
所以z=2
综上,y=2 , z=2
更多追问追答
追问
y--不是再使用y之后才要变化的吗?
追答
我写错了,是y=3,笔误,不好意思
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式