hi_kidult 2021-07-12 15:22 采纳率: 100%
浏览 22
已采纳

请写出下题的解题过程

经过以下语句定义,int x=1,y=2,z=3;
表达式 z+=x>y?++x:++y的值为?
结果为 6

还有书上的一句话我也不懂

img

  • 写回答

3条回答 默认 最新

  • 八云黧 2021-07-12 15:30
    关注

    你划线的那句话意思就是z+=x>y?++x:++y要按(z+=(x>y?++x:++y))的顺序进行运算
    根据++x是先让x加一然后返回值,所以原式可以认为(z+=(x>y?++x:3))->(z+=(x>y?2:3))->(z+=(2>3?2:3))->(z+=3)的计算步骤进行。
    注意:三目运算只会执行为真的表达式,也就是说x++并没有被执行,楼下的回复是有问题的

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 已采纳回答 7月12日
  • 创建了问题 7月12日