double aa=0.000000000000000000004444444444444444444444
string bb=aa.tostring();
bb=4.44444444444444E-15为什么不等于“0.000000000000000000004444444444444444444444”请高人指点

解决方案 »

  1.   

    试试这个
    double aa=0.000000000000000000004444444444444444444444 ;
    string bb=Math.Floor(aa).tostring(); 
      

  2.   

    错了, static void Main(string[] args)
            {
                double aa = 0.000000000000000000004444444444444444444444;
                string bb = aa.ToString();
                Console.WriteLine(aa);
                Console.WriteLine( bb);
            }这个浮点数精度问题
      

  3.   


    用decimal可以不变成科学计数法。
                double aa = 0.000000000000000000004444444444444444444444;
                decimal bb = (decimal)aa;
                string cc = bb.ToString();
    但是decimal的小数精度只有28位,太长的它就截断了。没想到更好的办法。