人人终身学习知识网~是各类综合知识资源信息分享,提升综合素质与提高知识技能的终身学习网络平台

 找回密码
 立即注册

QQ登录

只需一步,快速开始

微信登录

微信扫码,快速开始

执行下列程序段后,变量a,b,c的值分别是多少?intx=10,y=9,a,b,c;a=(--x==y++)?--x:++y;b=x++;c=y;A.a=9,b=9,c=9B.a=8,b=8,c=10C.a=9,b=10,c=9D.a=1,b=11,c=10书上的答案是选B的可我理解不了

[复制链接]

问题:执行下列程序段后,变量a,b,c的值分别是多少?intx=10,y=9,a,b,c;a=(--x==y++)?--x:++y;b=x++;c=y;A.a=9,b=9,c=9B.a=8,b=8,c=10C.a=9,b=10,c=9D.a=1,b=11,c=10书上的答案是选B的可我理解不了

答案:↓↓↓

网友采纳  这段程序先判断--x等不等于y++,--x先自减再比较所以是9,y++先比较再自加所以此时也是9,所以这个三目运算符(:)问号前面的判别式为真,所以执行冒号前面的表达式,变量x再次自减,此时x为8,之后先后执行b=x++;c=y;两条语句,注意此时y的值为10,不难发现答案为B
回复

使用道具 举报

小黑屋/人人终身学习知识网~是各类综合知识资源信息分享,提升综合素质与提高知识技能的终身学习网络平台

Powered by 5wangxiao

© 2007-2021 5wangxiao.Com Inc.

快速回复 返回顶部 返回列表