问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

C#从int到double类型转换的问题

发布网友 发布时间:2022-04-19 23:38

我来回答

3个回答

热心网友 时间:2023-09-05 08:37

这个问题答过好几遍了,今天干脆把原理说出来吧
double是一定会出误差的,你想一想嘛,内存中记的都是0和1,有限位数的二进制数能表示的十进制小数当然有限,作运算的时候精度肯定是不完全精确的.
不管你用几位,一个double在内存中分配的空间都是64位,所以就会出现这种误差,比如一个循环小数在计算机中表示的就是不精确的,是省略了后面N位小数之后的值.具体的你可以查询MSDN :Double structure
解决办法二楼已经说过了.

热心网友 时间:2023-09-05 08:38

Math.Round(你的数,小数点位数)

double就是不精确的类型,你可以用上面的方法使用四舍五入得到你需要的值

至少我试过C++,JAVA,C#都有这种误差

double型就是不精确的!
要避免就用四舍五入,结果和你要的是一样的

热心网友 时间:2023-09-05 08:38

你可以把double的数值转换成成string,split('.')就可以得到小数部分!
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
qq农场七夕情人节活动礼包怎么 天津金钟大街麦当劳鸡腿吃完拉肚子怎么办? 昨晚吃了一个放了一下午的鸡腿,四点过就拉肚子了。全部便的水,上午又... 手机对手机怎么发信息 没有手机在网上能给手机发短信吗? 大理石如何做结晶 如何做大理石结晶 【大理石结晶】大理石结晶工艺流程是什么 大理石结晶粉的作用 韭菜割了为什么会长 司法考试 刑法 请问间接正犯之间成立共犯吗?还是只有一方适用共犯关系... int是什么词性? int.表示什么词性 java中int 和 Integer 有什么区别 Java中Integer和int的区别 int什么是什么词性 谁能解释一下下面这段程序啊? int it= Integer.parseInt(intStr); double itf=(d... 用了加速器之后不能上网了 手机连wifi可以上网 网游加速器的四种加速模式分别是什么? 请问下在国外用迅游加速器可以吗? 腾讯手游加速器算外网吗 刚在网站上下了个加速器,安装后电脑就不能上网了... 美国快手用什么软件才能打得开 oppor17换电池 win网络小地球? 网游加速器可以当使用吗? oppor17原装充电器是深圳还是惠州出的 OPPOR17原装电池可以买吗? oppor17电池多大毫安 oppo r17p电池 I clearly remember lockint it. intitation什么意思 有关数据结构栈的代码 在c语言中,int代表什么意思 急!!大家可不可以帮我翻译一下,万分感谢,谢谢了 “大家好”用英语怎么说 c语言编程例题 关于C语言中的int恳请各位高手解惑 (int&)怎么用? isdigit(int ch) 具体用法 签订书面的劳动合同原因是什么 申请确认劳动关系原因是什么 续签劳动合同原因及内容 《解除终止劳动合同人员登记表》上终止解除劳动合... 签订劳动合同申请书范文 劳动合同申请书怎么写? 企业解除劳动合同跟个人申请解除劳动合同有什么区别 十级工伤我个人要解除劳动合同原因怎么填写 个人原因解除劳动合同 公司单方面解除劳动合同,为什么要我写因个人原因?