null_0108
2020-01-08 21:15
采纳率: 66.7%
浏览 160
已采纳

初学Java算数符的优先级运算 搞不明白求余之后的结果

int x =(5*8/(7+2)) % 5;
正确结果是x=4
我第一步算的是 5*8 结果是40
第二步是5*8/(7+2)结果是4余4
第三步(5*8/(7+2)) % 5就搞不明白了 怎么得到的4?

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

3条回答 默认 最新

  • blownewbee 2020-01-09 00:25
    已采纳

    第一步算的是 5*8 结果是40
    第二步是5*8/(7+2)结果是4(余数不管)
    第三步4% 5,(商0不管),余数4
    所以4

    问题解决的话,请点下采纳

    点赞 打赏 评论
  • HockerF 2020-01-08 21:36

    对的呀,4%5就得4嘛,可以认为商0余4

    点赞 打赏 评论
  • 王能 2020-01-09 10:20

    小学数学学多了吧,5*8/(7+2)=4.4444444.....带什么余数
    然后就是java里面int型加减乘除结果就是int型,所以4.44444的小数位被舍去结果就是4
    最后4对5求余结果当然还是4了

    问答版主就是牛,从现在起只回论坛,不在踏入问答半步

    点赞 打赏 评论

相关推荐 更多相似问题