asp截取四位,谁能告诉我这是为什么?

xiaoliuvv 2015-07-20 09:06:46
<%
i=33444.59999999999999999999999999999
Response.Write int(i*10000)/10000
%>
为什么得出结果不是33444.5999 ?
而是33444.6,我要想将i截取4位小数,且不四舍五入怎么做呢??
...全文
160 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
mumusan 2015-07-30
  • 打赏
  • 举报
回复
i=33444.59 Response.Write clng(i*10000)&"<br>"
  • 打赏
  • 举报
回复
引用 1 楼 xiaoliuvv 的回复:
<% i=33444.59 Response.Write int(i*10000)&"<br>" %> 这个结果居然是334445899 就是在这出问题了,怎么才能避免取整函数的这个问题?
应该不会有这么问题吧,int本身就是取整的啊,不会自动减1或者+1的
Dogfish 2015-07-22
  • 打赏
  • 举报
回复
上面的答案错的
i= 33444.59999999999999999999999999999
Response.Write cdbl(left(trim(i-int(i)),6))+int(i)
xiaoliuvv 2015-07-22
  • 打赏
  • 举报
回复
引用 3 楼 dogfish 的回复:
上面的答案错的
i= 33444.59999999999999999999999999999
Response.Write cdbl(left(trim(i-int(i)),6))+int(i)
你这个33444.99999999999999999999999999999 就不对了
Dogfish 2015-07-22
  • 打赏
  • 举报
回复
i=33444.59999999999999999999999999999
Response.Write  FormatNumber(i,3)
xiaoliuvv 2015-07-20
  • 打赏
  • 举报
回复
<% i=33444.59 Response.Write int(i*10000)&"<br>" %> 这个结果居然是334445899 就是在这出问题了,怎么才能避免取整函数的这个问题?

28,376

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧