【问题标题】:How to change a value in an array C++如何更改数组 C++ 中的值
【发布时间】:2014-05-09 11:57:59
【问题描述】:

这个函数用于代码玩井字游戏:

//--------------------FUNCTION--------------------

bool playCell(int player, int position, int gameBoard[]) {

    if (gameBoard[position] == 10 || gameBoard[position] == 11) {
        return false;   
    } else {
        return true;
        if (player == 0){
            gameBoard[position] = 10;
        } else {
            gameBoard[position] = 11;
        } // end if
    }
} // end function 

playCell 获取一个玩家(0 代表“O”,1 代表“X”)、一个位置(1 到 9)和九个元素 gameBoard,如果移动是合法的(即那个位置还不是),则返回 true采取),否则为假。如果移动是合法的,它会将位置更改为该玩家编号(“O”为 10,“X”为 11)。如果玩家或位置输入无效,则返回false。

我试图弄清楚如何让数组根据玩家将其值更改为 10 或 11,并保存到他们输入的位置。

【问题讨论】:

    标签: c++ arrays function boolean


    【解决方案1】:

    return 关键字将程序流重定向回主程序。所以返回后的代码不会被执行。更改return的位置:

    //--------------------FUNCTION--------------------
    
    bool playCell(int player, int position, int gameBoard[]) 
    {
        if (gameBoard[position] == 10 || gameBoard[position] == 11) 
        {
            return false;   
        } 
        else 
        {
            if (player == 0)
            {
                gameBoard[position] = 10;
            }
            else 
            {
                gameBoard[position] = 11;
            } // end if   
            return true;
        }
    } // end function 
    

    【讨论】:

    • 非常感谢!我知道那是一个非常简单的问题,但是我要花很长时间才能弄清楚。
    • 输出数组时,我需要一个 X 或一个 O 出现在用户输入的位置。我该怎么写.. 我有一个打印表格的函数,需要编写代码,以便如果用户“X”选择位置 3,它将显示 +----+----+----+ | 1 | 2 | X | +----+----+----+ | 4 | 5 | 6 | +----+----+----+ | 7 | 8 | 9 | +----+----+----+
    • 你可以在主程序中进行。你有球员和位置。所以如果移动是合法的,把position的值改成player
    【解决方案2】:

    您在此处的数组分配之前有一个 return 语句:

        return true; // HERE
        if (player == 0){
            gameBoard[position] = 10;
        } else {
            gameBoard[position] = 11;
        } // end if
    

    这会导致您的代码不被执行。从那里删除这条线并放在正确的位置。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-06-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多