日期:2014-05-16  浏览次数:20758 次

求助:数据显示出错?
最近写的一个程序老是显示出错了,这是一个统计的代码?
部分代码如下:

dim n1,n2,n3,s1,s2,s3
n1=0:n2=0:n3=0:s1=0:s2=0:s3=0
.......
  If rs_r("record_tp")=37 Then
  tp=2
  n2=n2+1
  s2=s2+rs_r("record_sum")
  ElseIf rs_r("record_incometype")<>0 Then
  tp=1
  n1=n1+1
  s1=s1+rs_r("record_sum")
  Else
  tp=0
  n0=n0+1
  s0=s0+rs_r("record_sum")
  End If

<div align="center" style=" color: #009; padding:5px;">本页小计:支出<%=n0%>笔总计<%=s0%>元,收入<%=n1%>笔总计<%=s1%>元,转账<%=n2%>笔总计<%=s2%>元,结余<%response.Write(cdbl(s1-s0))%>元</div>

说明:record_sum为长整型,默认保留2位小数
但是显示出来结果是:
本页小计:支出32笔总计5312.14元,收入8笔总计4507.79元,转账0笔总计0元,结余-804.349999999999
点下一页就显示正常,我看了数据库和代码,好像都没有问题,这种出错是这么回事??该怎么修改???
------解决方案--------------------
脚本进行浮点运算有误差。你都转成整数进行运算

结余<%response.Write (s1*100-s0*100)/100 %>元