真逗,dim a as single;  a=0.1;  ? 89 * a 时结果是8.900001; ? val("00089") *a ,结果即是8.90000013262033这是我在写另一程序时遇到的问题,原来把字符串"00089"乘以0.1后入库,发现入库后为8.900001,后来写下面程序试也是这样程序如下Private Sub Command1_Click()
    Dim a As Single
    a = 0.1
    Print Val("00089") * a
End Sub反复试验有以下情况Print 89 * a
得到8.900001Print 88 * a
得到8.8Print 87 * a
得到8.7不知是什么原因引起的