如果用户要求,我该如何重复循环?

时间:2015-05-20 09:35:59

标签: c# console

如果用户要求,我该如何重复循环?

你可以看到我到目前为止所做的事情。 这是一个Tic tac toe游戏。

现在循环处于while(true)状态。但是我想改变它,所以当游戏结束时,程序询问用户是否想要另一个游戏。 到目前为止,我没有设法这样做。

如您所见,第一个循环清除控制台并初始化游戏板。然后第二个循环显示板并继续从用户等移动。 有一种方法会询问用户是否希望再次使用IfWinningIsTie方法进行游戏。 我希望程序询问用户是否要再次播放然后退出第二个循环并重新启动第一个循环。

谢谢

static Game G = new Game();
\\\Game is a class

try{
    while(true)
    {
        Console.Clear();
        G.StartingGameBoard();

        while(true)
        {
            G.BoardDisplay();

            G.Playing(G.ChecksException());
            G.BoardDisplay();

            G.IfWinning();

            G.IsTie();
            G.CurrentPlayer = G.GetTheNextPlayer(G.CurrentPlayer);

        }   
    }  
}
catch (Exception ex)
{
    Console.WriteLine(ex.Message);
}

1 个答案:

答案 0 :(得分:-1)

您需要做的就是使用Console.ReadKey()

    try{
        bool ReRunGame = false; <<<<
        do
        {
            Game G = new Game();

            Console.Clear();
            G.StartingGameBoard();

            while(true)
            {
                G.BoardDisplay();

                G.Playing(G.ChecksException());
                G.BoardDisplay();

                G.IfWinning();

                G.IsTie();
                G.CurrentPlayer = G.GetTheNextPlayer(G.CurrentPlayer);

            }   

            Console.WriteLine("Play another game?");
            ConsoleKeyInfo ck = Console.ReadKey();
            ReRunGame = (ck.Key == ConsoleKey.Y);

        }while(ReRunGame);  <<<<<
    }
    catch (Exception ex)
    {
        Console.WriteLine(ex.Message);
    }