从double到string的格式不正确书示例C#

时间:2016-02-10 02:11:24

标签: c# visual-studio-2012 double tostring

所以我正在按照我的书中的一个例子给我输入可视化工作室的代码。我输入的代码与教科书中的代码完全相同,但我无法运行程序。

Console.Write("{ 0, 8}", tipRate.ToString("F"));抛出

  

输入字符串的格式不正确

我不知道问题所在。自从出版这本书(2012)以来,Visual Studio中的某些内容可能已经发生了变化?对此有任何帮助将非常感激,因为我不理解我做错了什么。

class Program
{
    static void Main(string[] args)
    {
        double dinnerPrice = 10.00;
        double tipRate;
        double tip;

        const double LOWRATE = 0.10;
        const double MAXRATE = 0.25;
        const double TIPSTEP = 0.05;
        const double MAXDINNER = 100.00;
        const double DINNERSTEP = 10.00;

        Console.Write("     Price");

        for (tipRate = LOWRATE; tipRate <= MAXRATE; tipRate += TIPSTEP)
            Console.Write("{ 0, 8}", tipRate.ToString("F"));

        Console.WriteLine();

        Console.WriteLine
        ("——————————————————————————————————————");

       tipRate = LOWRATE;

        while (dinnerPrice <= MAXDINNER)
        {
            Console.Write("{ 0, 8}", dinnerPrice.ToString("C"));

            while (tipRate <= MAXRATE)
            {
                tip = dinnerPrice * tipRate;
                Console.Write("{ 0, 8}",tip.ToString("F"));
                tipRate += 0.05;
            }

            dinnerPrice += DINNERSTEP;
            tipRate = LOWRATE;
            Console.WriteLine();
        }
    }
}

1 个答案:

答案 0 :(得分:4)

你的字符串上有拼写错误。删除{

后的空格
Console.Write("{0, 8}", tipRate.ToString("F"));

请注意,您在多个地方遇到同样的问题,您需要在任何地方修复它。