已知int x=6,y,z;,执行语句y=z=x,x=y==z,后,变量x的值是多少?为什么

 我来答
金色潜鸟
2016-04-18 · TA获得超过3.2万个赞
知道大有可为答主
回答量:1.3万
采纳率:89%
帮助的人:5702万
展开全部
y=z=x; 是赋值语句,从右到左,先让 z 得 到 x 的初值 6,再让 y 得到 6.
这时 , x=6,y=6,z=6.

x = y==z; 这个赋值语句 可写成 x = (y==z); 这里 y==z 是 逻辑表达式,判断 y和 z 是相等还是不等,
相等 则为 真,不等则为 假。由于相等,所以得真,真就是1 (假是0),于是把 1 赋给 x.
故 结果 x 为 1。
阿狸和逍遥
2016-04-18 · 超过49用户采纳过TA的回答
知道小有建树答主
回答量:164
采纳率:0%
帮助的人:36.2万
展开全部
x = 1
首先
int x=6,y,z; // 这句话 x= 6
y = z =x; //x = 6 y = 6 z = 6
x = y == z //这句话 因为 == 的优先级 大于 = 的优先级 因此 先进行比较
// y == z 为真 即为1 再将 1 赋给 x 因此 x = 1
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
daitiezhu
2016-04-18 · TA获得超过2276个赞
知道小有建树答主
回答量:4177
采纳率:34%
帮助的人:626万
展开全部
x=1 y=z=6
更多追问追答
追答
优先级的问题,上电脑上试一下就知道了
追问
x=0😭
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式