运行我的基本c#控制台应用程序时,我的控制台打开空白,我不知道为什么

时间:2017-02-28 01:57:30

标签: c# console

我正在制作一款小游戏来帮助我学习c#。到目前为止我所做的全部内容都添加了一些变量,如fullName,firstName和lastName,以便稍后引用它们。这工作得很好。但是,当我提到添加像Mr.或Ms.这样的名称前缀的问题时(我在代码中称他们为#34; titles")控制台只是打开空白。这是我的代码......

using System;

namespace My_Fist_Console_Game
{
    class Program
    {
        static void Main(string[] args)
        {
            string userValue = Console.ReadLine();

            Console.WriteLine("Airport Sim: Console Edition (literally)");
            Console.Write("Type your first name here: ");
            string firstName = Console.ReadLine();
            Console.Write("Type your last name here: ");
            string lastName = Console.ReadLine();

            string title;

            Console.Write("are you male or female?");
            if ((userValue == "male") || (userValue == "Male"))
            {
                title = "Mr. ";
            }
            else if ((userValue == "female") || (userValue == "Female"))
            {
                title = "Ms. ";
            }

            string fullName = firstName + " " + lastName;

            Console.ReadLine();

            Console.Clear();

            Console.WriteLine("Flight Attendant: ");
            Console.WriteLine("    Hello " + title + " " + lastName);





            Console.ReadLine();
        }
    }
}

3 个答案:

答案 0 :(得分:1)

程序中的第一个语句是Console.ReadLine,它等待用户输入内容。由于您从未告诉它在之前打印到控制台,控制台打开并显示为空白。

如果您输入内容并点击"输入"然后代码可以继续执行,你会看到输出。

答案 1 :(得分:1)

using System;

namespace My_Fist_Console_Game
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Airport Sim: Console Edition (literally)");
            Console.Write("Type your first name here: ");
            string firstName = Console.ReadLine();
            Console.Write("Type your last name here: ");
            string lastName = Console.ReadLine();

            string title;
            while (title != "Mr. " && title != "Ms. ")


            {
                Console.Write("are you male or female? Input male, if you are male       or imput female if you are female");

                string userValue = Console.ReadLine();
                if ((userValue == "male") || (userValue == "Male"))
                {
                    title = "Mr. ";
                }
                else if ((userValue == "female") || (userValue == "Female"))
                {
                    title = "Ms. ";
                }
            }
            string fullName = firstName + " " + lastName;

            Console.ReadLine();

            Console.Clear();

            Console.WriteLine("Flight Attendant: ");
            Console.WriteLine("    Hello " + title + " " + lastName);
            Console.ReadLine();
        }
    }
}

答案 2 :(得分:0)

将您的uservalue变量置于您的条件之上:

string userValue = Console.ReadLine(); 
        if ((userValue == "male") || (userValue == "Male"))
        {
            title = "Mr. ";
        }

然后尝试编辑这部分:

string fullName = firstName + " " + lastName;

        Console.ReadLine(); //Remove this and put it after Console.WriteLine

        Console.Clear(); //Remove this and put it after Console.WriteLine

        Console.WriteLine("Flight Attendant: ");
        Console.WriteLine("    Hello " + " " + lastName);

你正在做的是你正在调试Console.ReadLine(),它会在你的程序发生任何事情之前先得到用户的任何意见。