私は電卓を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);
}
}
}
}
私が聞いてきたら「はい」と入力すると、コンソールが私を歓迎するはずです。しかし、代わりに、私をどこにでも導くことはなく、空白のままです。もう一度Enterキーを押すと、コンソールが閉じます。なぜこれが起こっているのですか?どうすればそれを防ぐことができますか?私が試してみました何
:
を、私は、コンソールがそれに私をリードしていたが、それは助けにはならなかったことを考えて、(0)environment.exitを削除しようとしました。 Visual Studioでもコードを入力しようとしましたが、結果に違いはありませんでした。 (私は鋭い開発を使用しています)
gotoの代わりに条件付きで使用してください。 gotoは使用しないでください、その悪い練習とみなされます – Mafii
文字列は明らかにnoではなく、yesではありません - それはあなたがenvironment.exitを取り除いてもまだ閉じていない理由です。 yesornoの値をブレークポイントで確認することを検討してください。 – Mafii
文字列の前にconsole.readlineを再配置してください。yesorno = Console.ReadLine(); – rashfmnb