我正在尝试用C#编写一个“石头剪刀布游戏”,我想添加一个“选择名字屏幕”。
namespace Program;
public class Program() {
static void Main(string[] args){
Console.WriteLine("Wilkommen Benutzer zu Schere, Stein, Papier!");
Console.WriteLine("Möchtest du einen Namen wählen? (j/n) ");
string? choice1 = Console.ReadLine();
if(choice1 == "j"){
Console.WriteLine("Dann wähle deinen Namen! ");
string? name = Console.ReadLine();
Console.WriteLine(name + ", ist das so richtig? (j/n) ");
string? choiceName = Console.ReadLine();
if(choiceName == "n"){
//Repeat "if(choice1 == "j")" here
}
else if(choiceName == "j"){
Console.WriteLine("Wilkommen " + name + "!")
}
}
else if(choice1 == "n"){
Console.WriteLine("Dann wird dir der Name \"Benutzer\" zugeteilt");
name = "Benutzer";
}
else {
Console.WriteLine("Ich nehme das als ein Nein")
Console.WriteLine("Dann wird dir der Name \"Benutzer\" zugeteilt");
name = "Benutzer";
}
}
}
在第 13 行,我希望它返回或重复第 7 行,直到用户键入“j”。
我的逻辑思考能力不足以使用
while
陈述。我还能做些什么来重复 if
代码吗?
附言。我是 C# 和一般编程的新手。
string? name, choiceName;
do
{
Console.WriteLine("Dann wähle deinen Namen! ");
name = Console.ReadLine();
Console.WriteLine(name + ", ist das so richtig? (j/n) ");
choiceName = Console.ReadLine();
}
while(choiceName == "n");
Console.WriteLine("Wilkommen " + name + "!")
您可以使用 do-while 语句,只要 choiceName 为 n,该代码块就会重复。