0.00000024797628483952394
怎么转成0.0000003 
最后一个0后的数字加1
0.000733543=》0.0008
0.0033543=》0.004

解决方案 »

  1.   

    你这里字符串表示?如果是,则从左到右找到第一个非0数字,转换为int,然后+1,然后/n位
      

  2.   

    static void Main(string[] args)
            {
                string str = "0.00000024797628483952394";
                System.Collections.ArrayList arrlist = new System.Collections.ArrayList();
                for (int i = 0; i < str.Length; i++)
                    arrlist.Add(str[i]);
                for (int i = 0; i < arrlist.Count;i++ )
                {
                    if (!arrlist[i].Equals('0') && !arrlist[i].Equals('.'))
                    {
                        string strTemp = arrlist[i].ToString();
                        int num = Convert.ToInt32(strTemp);
                        num += 1;
                        string strchild = str.Substring(0,i-1);
                        string strResult = strchild + num.ToString();
                        double result = Convert.ToDouble(strResult);
                        Console.WriteLine(result);
                        break;
                    }            }
                Console.Read();
            }
      

  3.   

    string str = "0.00000024797628483952394";
                
                for (int i = 0; i < str.Length;i++ )
                {
                    if (!str[i].Equals('0') && !str[i].Equals('.'))
                    {
                        string strTemp = str[i].ToString();
                        int num = Convert.ToInt32(strTemp);
                        num += 1;
                        string strchild = str.Substring(0,i-1);
                        string strResult = strchild + num.ToString();
                        double result = Convert.ToDouble(strResult);
                        Console.WriteLine(result);
                        break;
                    }            }
                Console.Read();
      

  4.   

    这不就是舍入吗...很多方法...decimal Round(decimal d,int decimals)
    {
    return Math.Round(d+1m/((decimal)Math.Pow(10,decimals)*2),decimals);
    }
    decimal Round(decimal d,int decimals)
    {
    return Math.Ceiling(d*(decimal)Math.Pow(10,decimals))/(decimal)Math.Pow(10,decimals);
    }
      

  5.   

    decimal本身就有这个静态方法
    decimal.Round(decimal d, int decimals)但不符合楼主需求