余数不是不能为小数吗?为什么会有这样的VB题,25.36 mod 7.6,求解答!

顺便请高手解答下这题,并解释下 A$=”87654321”求: Val( left$(A$,4)+Mid$(A$,4,2))
Mid$(A$,4,2)) 代表什么意思?
万分感谢

系统自动将小数四舍五入化为整数,然后求余。
25.36 mod 7.6
=25 mod 8
=1

A$=”87654321”
Val( left$(A$,4)+Mid$(A$,4,2))
=val("8765"+"54")
=val("876554")
=876554追问

为啥和楼下得不一样,该听谁的。。。

追答

mod 运算符号用于两个整数之间求余数,如果被除数或除数为小数的话,先四舍五入取整,然后再求余。上机一试便知对错。

我给出的答案一定是正确的,因为我上机试过了。

追问

谢谢,那Mid$(A$,4,2)) 和 Val()是什么意思

追答

mid$(a$,4,2)
是从a $串左侧第4个字符开始取2个字符。结果就是"54"
val()
是将字符串开头的数字转化为数值。是一个将字符串转化为数值的函数。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-03-05
vb中 mod 求余时 回自动转化成整数 也就是相当于 25 mod 8 结果为1
A$=" 87654321"
(如果有空格的话也算一位)
left$(A$,4) =" 876"
Mid$(A$,4,2)="65"
left$(A$,4)+Mid$(A$,4,2)=" 876" & "65"
Val( left$(A$,4)+Mid$(A$,4,2))=87665
第2个回答  2011-03-06
25.36 mod 7.6=3.....2.56
left$(A$,4)="8765"
Mid$(A$,4,2)="54"
Val( left$(A$,4)+Mid$(A$,4,2)) =876554
Mid$(A$,4,2))是从A$第4位开始,取俩位字符,昨天搞错了,抱歉,Val()返回数值。
相似回答