Round的使用
举个例子如下:
using System;
namespace practice3
{
class MainClass
{
public static void Main(string[] args)
{
float a=10.1f;
float b=10.9f ;
float c = -10.1f;
float d = -10.9f;
Console.WriteLine(Math.Round(a,0));
Console.WriteLine(Math.Round(b,0));
Console.WriteLine(Math.Round(c,0));
Console.WriteLine(Math.Round(d,0));
}
}
}
这里定义了a,b,c,d四个浮点数,当使用Round函数操作之后,都分别变成了离这个数最接近的整数。但是,这里存在一个特例,也就是当小数点位为5的时候,可以测试看一组数据:
using System;
namespace practice3
{
class MainClass
{
public static void Main(string[] args)
{
float a=10.5f;
float b=11.5f ;
float c = -10.5f;
float d = -11.5f;
Console.WriteLine(Math.Round(a,0));
Console.WriteLine(Math.Round(b,0));
Console.WriteLine(Math.Round(c,0));
Console.WriteLine(Math.Round(d,0));
}
}
}
可以看出,这里的Round并非符合四舍五入的规律,也在此提醒各位初学者,不要把Round理解为四舍五入,那么Round到底是一个什么样的规律呢?
假如一个数为:a.5
1.当a为正数的时候:a如果为奇数,使用Round之后,则舍去5进位,即结果为:a+1。如:3.5——》4
a如果是偶数,使用Round之后,则直接舍去5,即结果为:a。如4.5——》4
2.当a为负数的时候:a如果是奇数,使用Round之后,则舍去5后退一位,也就是a-1;
如:-3.5——》-4;
a如果是偶数,使用Round之后,则直接舍去5,结果为a;
如:-4.5——》-4;
如果理解有错,请大神纠正。如果还有扩展性文档,也请大佬不吝赐教!当然,其详细用法请参考微软官方手册。
地址为:https://msdn.microsoft.com/zh-tw/library/3s2d3xkk(VS.80).aspx