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

结合运行结果: x=4,表示不理解

m=5,n7

int  x = ( m * 8 / ( n + 2 ) ) % m ;

结合运行结果: x=4,表示不理解


正在回答

21 回答

woqu ,有点逆天

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

4%5为什么余4呢

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

徐离酱

4%5得0余4 取余数4
2016-10-11 回复 有任何疑惑可以回复我~

这些运算符默认都是取整操作

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

只是最后的结果要求是int类型赋值给x,怎么理解计算过程中40/9的结果也取int类型呢?

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

悟道参禅

因为40和9都是int类型的,你试下 (40.0/9.0)%5
2015-11-09 回复 有任何疑惑可以回复我~
#2

重返艾泽拉斯 回复 悟道参禅

。。int类型怎么能算这段数字
2017-07-02 回复 有任何疑惑可以回复我~

40/9 得4 余4,因为是int类型,所以取4就行,然后4%5 得0余4,所以取余为4.

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

致远163

只是最后的结果要求是int类型,怎么理解计算过程中也去int类型呢?
2015-10-10 回复 有任何疑惑可以回复我~
#2

慕粉32

4%5 得0余4,所以取余为4 如果是这样的运算那么。 可不可以理解为凡是除数大于被除数的余数都为除数
2016-04-23 回复 有任何疑惑可以回复我~
#3

qq_行在天涯_04096833 回复 慕粉32

我想是的
2016-10-09 回复 有任何疑惑可以回复我~

总感觉40/9之后还没有完成赋值运算,实际上赋值应当是40/9%5才对啊,为什么在40/9的时候就要取整了?

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

MZS1994

括号 亲 (40/9)%5
2015-08-11 回复 有任何疑惑可以回复我~

取整,取整,取整,重要的事情说三篇。仅仅是取整,千万不要四舍五入

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

运算符优先级问题,()是最优先,所以先算最内层()中的内容(n+2),然后就变成了(5*8/9)%5,依然先算()内的内容,从左到右依次计算,结果取int型,变成了4%5,商为0,余4。取余为4。

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

首先先写成容易看的:int x = (5 * 8 / (7 + 2)) % 5;

运算过程:

int x = (5 * 8 / 9) % 5;

int x = (40 / 9) % 5;// 40 / 9 = 4

int x = 4 % 5;// 4 除以 5取余

int x = 4;

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

gxttxing

40/9为什么等于4,x为int,计算过程中也需要取整数吗?不是最后赋值给X才取整数吗?
2015-09-17 回复 有任何疑惑可以回复我~
#2

HappyHacking 回复 gxttxing

因为两个操作数都是整型的
2015-09-27 回复 有任何疑惑可以回复我~
#3

慕粉1474379935

int是整形。如果有1个double型。才会把int型转为double型。
2016-09-29 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

结合运行结果: x=4,表示不理解

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号