我一直在试图使这个打印出来的答案是两位小数。所有涉及的数学都必须保持在小数点后两位的格式。我已经尝试了一些东西,我不确定要做什么改变来完成这项工作。格式化一个双精度到两位小数
double pdt1 = 239.99;
double pdt1Total;
double pdt2 = 129.75;
double pdt2Total;
double pdt3 = 99.95;
double pdt3Total;
double pdt4 = 350.89;
double pdt4Total;
double wage = 200;
double percentage = 9;
double total;
double answer;
double i = 100;
double a;
double b;
double c;
double d;
Console.Write("Enter number sold of product #1: ");
a = Convert.ToInt32(Console.ReadLine());
Console.Write("Enter number sold of product #2: ");
b = Convert.ToInt32(Console.ReadLine());
Console.Write("Enter number sold of product #3: ");
c = Convert.ToInt32(Console.ReadLine());
Console.Write("Enter number sold of product #4: ");
d = Convert.ToInt32(Console.ReadLine());
pdt1Total = a * pdt1;
pdt2Total = b * pdt2;
pdt3Total = c * pdt3;
pdt4Total = d * pdt4;
total = (pdt1Total + pdt2Total + pdt3Total + pdt4Total);
string.Format("{0:0.00}", total);
string.Format("{0:0.00}", answer = (total * percentage/i) + wage);
Console.WriteLine("Earnings this week: "+answer+"");
什么是不工作? – Stobor
您可能不想使用浮点货币 - 舍入错误最终会咬你。似乎没有内置任何东西,但请参阅http://www.codeproject.com/Articles/28244/A-Money-type-for-the-CLR的链接以获取灵感。说了这么多,当你开始做百分比计算等事情时,你真的不能避免再增加几个小数位...... – canton7
我需要双打始终保留两位小数,但答案不会反映这一点。所以格式为:209.00(如果您为产品3选择1个产品,其他所有产品为0,则应该是答案。) –