【发布时间】:2015-06-25 17:03:37
【问题描述】:
我正在尝试为玩家设置一个棋盘来放置角色,在此示例中,我只使用“R”。但是当玩家进入角色并且程序显示棋盘时,不会发生任何变化。到目前为止,我不知道出了什么问题,我正在寻找一些线索。
我应该说,这在 Python 上是一件非常容易的事情,但我刚转向 C++,学习曲线很陡。
代码如下:
char matrix[9][9];
void doBoard()
{
for (int i = 1; i <= 10; i++)
{
for (int j = 1; j <= 10; j++)
{
if ((matrix[i][j] != 'R') || (matrix[i][j] != 'O'))
{
matrix[i][j] = '_';
std::cout << '|' << matrix[i][j] << '|';
}
}
std::cout << "\n";
}
}
void pickR()
{
int column;
int row;
std::cout << "\nThe columns and rows are enumerated from 1 to 10.\n";
std::cout << "Select the column and row where you would like to set your piece.\n";
std::cout << "Column (1-10): ";
std::cin >> column;
std::cout << "Row (1-10): ";
std::cin >> row;
matrix[column - 1][row - 1] = 'R';
std::cout << matrix[column][row] << "\n";
main()
{
doboard();
pickR();
doboard();
return 0;
}
运行此代码后,当板重新出现在屏幕上时,所有字符仍然是“_”,没有任何变化。
【问题讨论】:
-
这段代码无法编译。
-
doboard;,pickR;??更好的doboard();和pickR(); -
请习惯 C/C++ 范围:它们从零开始,以 size-1 结束(你的循环是错误的,也是矩阵的大小)
-
@RedRoboHood Yup! 投票结束。
-
我没有添加所有代码,只是我有问题的部分。忘记括号了,我不得不从编辑器翻译并重新输入代码,因为它是另一种语言,抱歉。
标签: c++ multidimensional-array