我只会麻烦的办法,我经验少。double变成string,string。split(,);
string。length

解决方案 »

  1.   

            double aaa = 231245.75;
            string str = "";
            while (aaa >= 10)
            {
                str += "0";
                aaa = aaa / 10;
            }
            str = "1" + str;
            Int64 bbb = Convert.ToInt64(str);
      

  2.   


                float n = 231245.75f;
                int result = (int)Math.Pow(10, Math.Floor(Math.Log10(n) + 1) -1);
    效率没有测试过。另外注意n不能为0或者负数。
      

  3.   

    加入字符串版本:
                float n = 31245.75f;
                int result = (int)Math.Pow(10, Math.Floor(Math.Log10(n) + 1) -1);            int result1 = (int)Math.Pow(10, (((int) n).ToString().Length - 1));