当满足“if-requirement”时,如何退出控制台应用程序?

时间:2013-11-17 17:02:44

标签: c# if-statement

我目前正在使用12位字母ISBN号码的校验位计算器,如果用户输入的长度超过12个字符,我正试图让它退出。

Console.WriteLine("ISBN-Prüfziffer berechnen");
        Console.WriteLine("=========================");
        Console.WriteLine();
        Console.Write("ISBN-Nummer ohne Prüfziffer: ");
        string ISBNstring = Console.ReadLine();
        ISBNstring = ISBNstring.Replace("-", "");
        ISBNstring = ISBNstring.Replace(" ", "");
        if (ISBNstring.Length > 12)
        {
            Console.WriteLine("Fehlerhafte Eingabe");
            Console.Read();
            Environment.Exit();
        }

        int Summe = 0;
        for (int i = 0; i < 12; i++)
        {
            int digit = ISBNstring[i] - '0';
            if (i % 2 == 1)
            {
                digit *= 3;
            }
            Summe += digit;
        }
        int PrüfZif = 10 - (Summe % 10);

        Console.Write("Prüfziffer: ");
        Console.Write(PrüfZif);
        Console.ReadLine();

现在的方式,应用程序发出错误消息“Fehlerhafte Eingabe”,当a,比方说13位数字输入时。但是它仍然会在之后给出结果。

我希望它在显示错误消息后立即停在那里,这就是我尝试使用Environment.Exit的原因。

不确定为什么它不起作用。先谢谢你们!

1 个答案:

答案 0 :(得分:3)

从评论中复制,只是为了表示问题已解决:

  

而不是Environment.Exit();,请使用return;。基本上它会停止执行你当前的方法。