如何获得十进制除法的十进制字符串表示?

时间:2013-09-25 14:39:21

标签: c# decimal division

如何使用小数除法的小数部分e,g。

decimal d = 10;
decimal result = d/10;

这会提供1,我如何拥有1.0(仍然是decimal,而不是string)?

2 个答案:

答案 0 :(得分:4)

11.0的十进制值相等。我假设你想看到带小数位的数字的格式。

为此,您可以使用.NET format strings。就个人而言,我通常使用custom format strings,所以它会是:

string formattedDecimal = result.ToString("#,##0.0");

#字符表示如果存在一个数字,但不使用前导零。 0字符表示您保证在那里有一个数字,即使它为零,因此1将被格式化为1.0。如果你不想进行分组,你可以省略哈希和逗号,只需要ToString("0.0"),它会给你同样的东西,省去任何潜在的数千个分组。

答案 1 :(得分:1)

如果是代表问题:

using System;

public class Test
{
    public static void Main()
    {
        decimal d = 10;
        decimal result = d / 10;

        Console.WriteLine( string.Format("{0:0.0}", result ) );
        // or
        Console.WriteLine( result.ToString("0.0") );
    }
}

他们都打印1.0作为输出。

DEMO