gpt4 book ai didi

c# - 如何调用main

转载 作者:太空宇宙 更新时间:2023-11-03 23:39:54 25 4
gpt4 key购买 nike

我才学习 C# 几天,我想知道当玩家在 switch 语句中说"is"时(当他被要求再次玩时)我将如何调用 Main 重新启动程序

    public static void Main(string[] args)
{
Console.WriteLine("Choose a gun to shoot at Toaster... ");
Console.Write("rocket/sniper/rifle/pistol: ");
string playersGunChoice = Console.ReadLine();
Random randomweapondmg = new Random();
int weapondmg = 0;
switch (playersGunChoice.ToLower())
{
case "rocket":
Console.WriteLine("You chose a rocket.");
weapondmg = randomweapondmg.Next(75, 200);
Console.WriteLine("Your rocket does " + weapondmg + " to Toaster.");
break;
case "sniper":
Console.WriteLine("You chose a sniper.");
weapondmg = randomweapondmg.Next(50, 150);
Console.WriteLine("Your sniper does " + weapondmg + " to Toaster.");
break;
}

int ToasterHealth = 500;
int ToastersLeftHp = ToasterHealth - weapondmg;
Console.WriteLine("Toaster has " + ToastersLeftHp + " healthpoints left.");
if (ToastersLeftHp != 0)
Console.WriteLine("Shoot at Toaster again?");
Console.Write("yes/no: ");
string PlayAgain = Console.ReadLine();
switch(PlayAgain.ToLower())
{
case "yes": //I want to call main here somehow
break;
case "no":
break;
default:
Console.WriteLine("That wasn't a yes or no.");
break;
}
if (ToastersLeftHp == 0)
Console.WriteLine("You killed Toaster!");
else if (ToastersLeftHp < 100)
Console.WriteLine("Toaster is almost dead! He has " + ToastersLeftHp + " healthpoints left.");
}
}
}

最佳答案

您可以像调用任何其他方法一样调用它。您写下名称并将其传递给它期望的参数:

Main(string[]{});

如果您不希望程序在完成调用 Main 后继续执行它正在执行的操作,您需要确保它在该点之后正常停止执行。

综上所述,使 Main 递归并不是我建议的那种问题的解决方案。我强烈建议在您的 main 方法中简单地应用一个循环,该循环持续执行您拥有的逻辑,直到您希望它停止,并在您需要重新启动或完全完成时完成循环的每次迭代。

关于c# - 如何调用main,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29418190/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com