在继续编程之前,我必须输入两倍的输入

时间:2014-08-09 16:46:27

标签: c# .net

我必须输入两次才能让程序继续执行,我无法弄清楚原因。 如果你能帮我解决它会很棒。

    static void Main(string[] args)
    {
        Console.WriteLine("What is your name?");
        string inputName = Console.ReadLine();
                Console.WriteLine("Did you type {0} yes/no", inputName);
                Console.ReadLine();
                    //string stringy = Console.ReadLine();
                string adamsstring = Console.ReadLine();
                    if (adamsstring == "no")
                {
                    Console.WriteLine("Then what is your name?");
                    Console.ReadLine();
                }
                    else if (adamsstring == "yes")
                    {
                        Console.WriteLine("Awesome!");
                    }
                    Console.WriteLine("Do you want to play a game?");
                //Console.WriteLine("Press 1 for yes or 2 for no");
                    string userValue = Console.ReadLine();
                if (userValue == "no")
                {
                    Console.WriteLine("TO BAD!");

                }
                else if (userValue == "yes")
                {
                    Console.WriteLine("Good!");
                }
                //Console.WriteLine("");
            }
        }
    }

2 个答案:

答案 0 :(得分:1)

 Console.WriteLine("Did you type {0} yes/no", inputName);

 Console.ReadLine(); //This looks like your issue

 string adamsstring = Console.ReadLine();

在执行WriteLine之后,你必须按两次输入,一次是ReadLine(),另一次是adamsstring。

虽然目前还不清楚你真正要问的是什么,但我删除了“你输入的内容......”下方的ReadLine()吗?'的WriteLine。

答案 1 :(得分:0)

如果我理解你的问题,你会想知道为什么用户需要输入两次他们的名字。 你有两次" ReadLine()"连续,这就是问题的原因。

Console.WriteLine("Did you type {0} yes/no", inputName);
Console.ReadLine();
                //string stringy = Console.ReadLine();
string adamsstring = Console.ReadLine();

可能的解决方案:

Console.WriteLine("Did you type {0} yes/no", inputName);
string adamsstring = Console.ReadLine();