随便定义一个double型变量
double x = 123.456789123456;
x = Math.Round(x, 3);
最后得出的x仍然为123.456789123456 没有实现取3位小数 这是怎么回事?
double x = 123.456789123456;
x = Math.Round(x, 3);
最后得出的x仍然为123.456789123456 没有实现取3位小数 这是怎么回事?
解决方案 »
- 问个 ebBrowser控件打开网站后,判断网站是否弹出窗口的问题.
- 遍历list集合,向listview中添加图片和数据
- SqlDataReader 怎么读取字段值
- 八百里加急----C#往Excel中写入数据问题
- 请大虾看下 是不是堆栈错误?
- 关于以数据库的内容作为判断条件的问题,急!
- 谁能帮帮忙,这个小模块如何写?
- 我用c#做了个socket访问http服务器,但返回HTTP/1.1 400 Bad RequestContent-Type: text/htmlDate: Thu, 30 Nov 2006 15:16:33 GMTConnect
- 获取队列中各对象数据问题。
- richtextbox里面的文字拖动是如何实现的?
- 虚拟主机不可以创建应用程序吗???
- C#读取word文档并显示打印预览
private void button5_Click(object sender, EventArgs e)
{
double x = 123.456789123456; //非准确数
x = Math.Round(x, 3); decimal y = 123.456789123456M; //准确数
y = Math.Round(y, 3); //结果是三位小数 123.456
}
double x = 123.456789123456;
x = Math.Round(x, 3);
Console.WriteLine(x); // 123.457
//得到一个double类型的数 类似于123.456789123456
double x = k * p.Y + d;
//然后我想取3位小数
x = Math.Round(x, 3);
运行到这发现x值没变 很无奈。。
我无语了 double类型不好用
decimal x1 = (decimal)1037.9119873046875;
x1 = Math.Round(x1, 3);
这时x1 = 1037.912
double x = (double)x1;
这时x = 1037.9119873046875
Math.Round这个方法叫我很无语
decimal x1 = (decimal)1037.9119873046875;
x1 = Math.Round(x1, 3);
Console.Write(x1+"\n");
double x = (double)x1;
Console.Write(x);
1037.912
1037.912