【问题标题】:incorrect format from double to string Book Example C#从 double 到 string 的格式不正确 Book Example C#
【发布时间】:2016-05-20 05:52:09
【问题描述】:

因此,我正在遵循我书中的一个示例,该示例为我提供了可以在 Visual Studio 中输入的代码。我输入的代码与教科书中的完全一样,但我无法让程序运行。

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();
        }
    }
}

【问题讨论】:

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


    【解决方案1】:

    你的字符串有错字。去掉{后面的空格

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

    请注意,您在多个地方都遇到了相同的问题,您需要在各处进行修复。

    【讨论】:

    • 我不敢相信我没有看到。我刚刚检查了这本书,但那里没有多余的空间,所以我不知道我从哪里得到的。至少这是一个简单的修复。谢谢您的帮助! :)
    猜你喜欢
    • 1970-01-01
    • 2019-10-05
    • 1970-01-01
    • 1970-01-01
    • 2011-05-14
    • 1970-01-01
    • 1970-01-01
    • 2019-01-31
    • 1970-01-01
    相关资源
    最近更新 更多