C# double小数点的取舍

using System;
namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
            double a, b, c, d;
            a = 0.123456789;
            b = Math.Round(a,5);//四舍五入 b = 0.12346
            c = Math.Truncate(a * 100000) / 100000;//舍弃后面一切数值 c = 0.12345
            d = (double)((int)(a * 100000)) /100000;//舍弃后面一切数值 d = 0.12345 
            Console.Write($"a={a}
b={b}
c={c}
d={d}
");

            a = 0.1234512345;
            b = Math.Round(a, 5);//四舍五入 b = 0.12345
            c = Math.Truncate(a * 100000) / 100000;//舍弃后面一切数值 c = 0.12345
            d = (double)((int)(a * 100000)) / 100000;//舍弃后面一切数值 d = 0.12345 
            Console.Write($"a={a}
b={b}
c={c}
d={d}
");
            Console.ReadKey();
        }
    }
}

结果

原文地址:https://www.cnblogs.com/lizhiqiang0204/p/14972007.html