【发布时间】:2018-05-10 04:00:22
【问题描述】:
这是家庭作业
我必须编写一个井字游戏,我剩下的唯一问题是格式化。这是我的矩阵函数,用户和计算机必须在其中输入他们的 O 和 X。
void the_matrix() { // Like the movie
//Get rid of the underscores
int m;
printf("The current state of the board:\n");
for (m = 0; m < 3; m++) {
printf("%c_ %c_ %c_\n", table[m][0], table[m][1], table[m][2]);
}
printf("\n");
}
所以项目要求编译器像这样显示游戏(为了简单起见,我只展示了这篇文章的第一行应该是什么样子。):
"_ _ _" [忽略引号]
然后用户在 (1,1) 位置输入“O”
哦 _ _。
当我运行我的程序时,它看起来像这样
O_ _ _
我知道程序为什么这样做,这是因为我的 printf 语句将它设置为那样。但我的问题是如何将下划线与 O 或 X 交换,这样下划线就不会显示了。
任何帮助将不胜感激!
【问题讨论】:
-
printf("%c %c %c", ...)怎么样? -
@melpomene 我需要'_'作为空位
-
只需使用所有下划线初始化板,并在输入时将它们替换为 Xs 或 Os。然后让您的打印功能简单地打印板的内容。打印功能不会关心板的内容是什么。