如何将输出格式设置为小数点后两位和'$';符号

本文关键字:两位 符号 输出 格式 设置 小数点 | 更新日期: 2023-09-27 18:09:35

C#语言新手我刚创建完一个贷款抵押计算器,在格式化下面的代码时遇到了问题。我想做的是将每月付款值格式化为小数点后2位,并添加"$"符号。如有任何帮助,我们将不胜感激。谢谢

我的本金金额示例输入:

//User input for Principle amount in dollars
Console.Write("Enter the loan amount, in dollars(0000.00): ");
principleInput = Console.ReadLine();
principle = double.Parse(principleInput);
//Prompt the user to reenter any illegal input
        if (principle < 0)
        {
            Console.WriteLine("The value for the mortgage cannot be a negative value");
            principle = 0;
        }

//Calculate the monthly payment
double loanM = (interest / 1200.0);
double numberMonths = years * 12;
double negNumberMonths = 0 - numberMonths;
double monthlyPayment = principle * loanM / (1 - System.Math.Pow((1 + loanM),    negNumberMonths));


//Output the result of the monthly payment
        Console.WriteLine("The amount of the monthly payment is: " + monthlyPayment);
        Console.WriteLine();
        Console.WriteLine("Press the Enter key to end. . .");
        Console.Read();

如何将输出格式设置为小数点后两位和'$';符号

我想做的是将每月付款值格式化为小数点后2位,并添加"$"符号。

听起来您想要使用货币格式说明符。

Console.WriteLine("The amount of the monthly payment is: {0:c}", monthlyPayment);

当然,这并不总是使用美元符号——它将使用线程当前文化的货币符号。始终可以显式指定CultureInfo.InvariantCulture

但是,我强烈建议不要使用double作为货币值。请改用decimal

来自MSDN:标准数字格式字符串(查找"货币("C"(格式指定符"(

Console.WriteLine("月供金额为:{0:C2}",monthlyPayment(;

您可以使用Math.Round()函数:

double inputNumber = 90.0001;
string outputNumber = "$" + Math.Round(inputNumber, 2).ToString();

要使用小数点后两位,可以使用:

Console.WriteLine("The amount of the monthly payment is: "$ " + Math.Round(monthlyPayment,2));