为了账号安全,请及时绑定邮箱和手机立即绑定

例题中前两步看懂了,最后一步结果为什么是9?具体怎么算的?

int a= 11;

int b= (a>3)*a-(a+3)%3;

printf("b=%d\n",b);


正在回答

2 回答

第二行中,(a>3)*a-(a+3)%3得到1*11-14%3,即11-2=9

0 回复 有任何疑惑可以回复我~
#1

慕移动6019357 提问者

最后一步为什么这样呢:printf("b=%d\n",b);这样不行吗:printf("%d\n",b);
2016-03-15 回复 有任何疑惑可以回复我~
#2

慕移动6019357 提问者

最后的输出结果应该是:b=9,才是准确的。
2016-03-15 回复 有任何疑惑可以回复我~

(a.>3)值为1  取得是逻辑值 为真 所以是1 开始我也没想清楚

1 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

例题中前两步看懂了,最后一步结果为什么是9?具体怎么算的?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信