为什么键入是后控制台关闭?

mak*_*h81 0 c# console calculator

我正在用C#制作一个计算器.这是乘法部分---

using System;
static class calculator 
{
    public static void Main() 
    {
    welcome:
    Console.WriteLine("Welcome to my calculator, please press enter to         continue");
    Console.ReadLine();
    Console.WriteLine("Do you want to add, subtract, multiply or divide?");
    string x = Convert.ToString(Console.ReadLine());
    if (x == "multiply") 
    {
        Console.WriteLine("Please enter the first value");
        decimal value1multiply = Convert.ToDecimal( Console.ReadLine());
        Console.WriteLine("Please enter the second value" );
        decimal value2multiply = Convert.ToDecimal(Console.ReadLine());
        Console.WriteLine("Result =");
        Console.WriteLine(value1multiply * value2multiply);
        Console.WriteLine("Thank you for using my calculator!Do you still want to use it?Please answer in 'yes' or 'no' and press 'enter'");
        Console.ReadLine();
        string yesorno =Console.ReadLine();
        if (yesorno == "yes") 
        {
            goto welcome;
        }
         if (yesorno == "no") 
         {
            Environment.Exit(0);
        }
    }
         }
       }
Run Code Online (Sandbox Code Playgroud)

当我要求我输入"是"时,控制台应引导我欢迎.但相反,它并没有引导我任何地方,仍然是空白.当我再次按回车键时,控制台关闭.为什么会发生这种情况,我该如何预防呢?

我尝试过的:

我尝试删除environment.exit(0),认为控制台引导我,但它没有帮助.我甚至尝试在Visual Studio中键入代码,但结果没有区别.(我用尖锐的发展)

Pat*_*man 7

除了使用goto,经常不赞成,你使用太多的ReadLine电话.

这里:

Console.ReadLine();
string yesorno = Console.ReadLine();
Run Code Online (Sandbox Code Playgroud)

也许你输入yes然后再打Enter两次.在那种情况下yesorno将是空的,你的检查将失败.第一个条目被第一个ReadLine未被分配给变量的条目吞噬.