Private Sub Form_Load()
Dim a As Long
Dim b As Long
Dim c As Long
b = 330
c = 180
a = b / c
Debug.Print b / c
Debug.Print a
End Sub显示:1.83333333333333 
      2
为什么?!!!!

解决方案 »

  1.   

    \ :Used to divide two numbers and return a floating-point result.(两数相除,返回一个浮点数)
    而a是长整型,系统自动把浮点数转化为整型赋予a,所以结果是2
      

  2.   

    b / c  这个是  330/180的结果,当然是1.83333333333333 Debug.Print a  由于a是长整型,因为是整数,所有为2
      

  3.   

    “/”运算符的两个表达式都是 Byte、Integer 或Single表达式时, 这返回一个 Single,除非超出正确范围;如果发生这种情况,则产生错误。 a是整形,赋值的时候就四舍五入了!
      

  4.   

    b / c  这个是  330/180的结果,当然是1.83333333333333 Debug.Print a  由于a是长整型,因为是整数,所有为2这个很对