2012-07-17 25 views
2

如何将每次浮动到最近的整数,但只能向下。我需要紧固件方法。C# - 每次往下浮动

所以float1将是1,1.8也是1。

谢谢!

+1

你想要得到的结果是float类型或诠释? – Chimera 2012-07-17 23:25:39

回答

17

Math.Floor()是你的朋友在这里。

示例代码:

using System; 
using System.Text; 

namespace math 
{ 
    class Program 
    { 
     static void Main(string[] args) 
     { 
      // 
      // Two values. 
      // 
      float value1 = 123.456F; 
      float value2 = 123.987F; 
      // 
      // Take floors of these values. 
      // 
      float floor1 = (float)Math.Floor(value1); 
      float floor2 = (float)Math.Floor(value2); 

      // 
      // Write first value and floor. 
      // 
      Console.WriteLine(value1); 
      Console.WriteLine(floor1); 
      // 
      // Write second value and floor. 
      // 
      Console.WriteLine(value2); 
      Console.WriteLine(floor2); 

      return;   
     } 
    } 
} 
+0

谢谢老兄回答! – 2012-07-17 23:13:06

+0

不客气。让我们知道您是否需要更多帮助。 – Chimera 2012-07-17 23:14:04

2

System.Math.Floor(double)应该做的伎俩

2

通过转换成一个int,你将截断小数

float f = 1.2; 
int rounded = (int)f; 
+2

正如你所说的那样,这将会_truncate_小数点。这意味着如果数字是负数,它将不会减少。 – Gigo 2014-07-03 15:53:47

1
Math.Ceiling(value) 
Math.Floor(value); //your answer