C# – 向下舍入到最近的整数

我有一个计算一些数字的C#应用​​程序。 我需要向下舍入。

var increment = 1.25; var result = 50.45 - 23.70; // equals 26.75 int interval = difference / increment; // result is 21.4. However, I just want 21 

我必须得到一个intinterval 。 同时,由于其舍入行为 ,我不能只使用Convert.ToInt32 。 我总是想要最低的整数。 但是,我不确定如何。

试试吧..

  int interval = Convert.ToInt32(Math.Floor(different/increment)); 

使用静态Math类:

 int interval = (int)Math.Floor(difference/increment); 

Math.Floor()将向下舍入到最接近的整数。

您也可以简单地将结果转换为int 。 这将截断数字。

 int interval = (int)(difference / increment); 

Math.Floor()函数应该可以解决这个问题:

 int interval = (int)Math.Floor(difference / increment); 

另请参阅: https : //msdn.microsoft.com/de-de/library/e0b5f0xb%28v=vs.110%29.aspx