mod 运算要求2个数都是整数,不是的话就四舍五入,所以 a=19.5 mod 2*2 =20 mod 4 =0
“sailingzyf”同志说的对。就是19.5被自动四舍五入了而造成的结果。
Dim a As Double a = 19.5 - 2# * 2# * Int(19.5 / (2# * 2#))
余数应该是1.5.。有可能你没有吧输入的数转换为数字