-8

如何获得小数除法的小数部分,例如

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

这给出了1,我怎么能拥有1.0(仍然是decimal,不是string)?

4

2 回答 2

4

1和的十进制值1.0相等。我假设您想查看带小数位的数字格式。

为此,您可以使用 .NET格式字符串。就个人而言,我通常使用自定义格式字符串,所以它是:

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

#字符表示如果存在一个数字,则在其中放置一个数字,但不要使用前导零。该0字符意味着您保证在那里有一个数字,即使它是零,所以1将被格式化为1.0. 如果您不想要分组,您可以省略散列和逗号,而只需拥有ToString("0.0"),这将为您提供相同的东西,而省略任何潜在的数千分组。

于 2013-09-25T14:44:29.090 回答
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

于 2013-09-25T14:53:46.497 回答