例如 double tem1 = 12.464;我想得到的是12.5再比如 double tem1 = 13.542;我想得到的是13.5希望高手指点。
感激不尽!!!!

解决方案 »

  1.   

    double tem1 = 12.464;
    string str = tem1.ToString("f1");
      

  2.   

     double.Parse(string.Format("{0:F1}",tem))
      

  3.   

                double tem1 = 12.464;
                Console.WriteLine(Math.Round(tem1, 1));
      

  4.   

                Double d1 = 12.464;
                Double d2 = 13.542;            Console.WriteLine("{0:f1}",d1);
                Console.WriteLine("{0:f1}", d2);
      

  5.   


    double tem1 = 12.464;
      Console.WriteLine(Math.Round(tem1, 1));Double d1 = 12.464;
      Double d2 = 13.542;  Console.WriteLine("{0:f1}",d1);
      Console.WriteLine("{0:f1}", d2);
      

  6.   

    double x = double.Parse("");
      double y = x % 0.1;
      double z = x - y;
      

  7.   

    你有这个疑问是因为用Math.Round()方法吧?Math.Round进位标准(国际标准):
    四舍、六入、五凑偶四舍六入五考虑,五后非零就进一,五后皆零看奇偶,五前为偶应舍 去,五前为奇要进一。eg:
    Console.WriteLine(Math.Round(0.25,1));//0.2 五后皆零看奇偶,五前为偶应舍 去
    Console.WriteLine(Math.Round(0.35, 1));//0.4 五后皆零看奇偶,五前为奇要进一
    Console.WriteLine(Math.Round(0.251, 1));//0.3 五后非零就进一ps:
    你的可以先转换为String再转为Double            Double tem1 = 12.464;
                Double tem2 = 13.542;            tem1 = Convert.ToDouble(tem1.ToString("F1"));
                tem2 = Convert.ToDouble(tem2.ToString("F1"));            Console.WriteLine(tem1);
                Console.WriteLine(tem2);
      

  8.   

    //你的问题不是因为Math.Round啊!?看错了,那也看下那个进位规则吧 :)用Math.Round(tem1,1)也可以...
      

  9.   

    来个捣乱复杂版的……
    double d1= 12.464,d2=13.542;
    d1 = (double)((int)((d1+0.05)*10))/10.0;
    d2 = (double)((int)((d2+0.05)*10))/10.0;
      

  10.   


            static void Main(string[] args)
            {
                double tem1 = 12.464;
                tem1 = (int)(tem1 * 10 + 0.5) / 10.0;
                Console.WriteLine(tem1);
                Console.WriteLine("Over");
                Console.ReadKey();
            }
      

  11.   


                Double tem1 = 12.464;
                Double tem2 = 13.542;            tem1 = Convert.ToDouble(tem1.ToString("F1"));
                tem2 = Convert.ToDouble(tem2.ToString("F1"));            Console.WriteLine(tem1);
                Console.WriteLine(tem2);
      

  12.   

    float a;//输入一个值给它
    int b;
    b=int(a+0.5);这个算法很经典了
      

  13.   

    [code=C#][
     Double tem1 = 12.464;
                Double tem2 = 13.542;            tem1 = Convert.ToDouble(tem1.ToString("F1"));
                tem2 = Convert.ToDouble(tem2.ToString("F1"));            Console.WriteLine(tem1);
                Console.WriteLine(tem2);
    /code]