c - 用用户输入的字符替换下划线(在 C 中)

标签 c arrays replace

这是作业

我必须编写一款 TicTacToe 游戏,唯一剩下的问题就是格式化。这是我的矩阵函数,用户和计算机必须在其中输入 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'

哦 _ _。

当我运行我的程序时它看起来像这样

哦_ _ _

我知道程序为什么这样做,因为我的 printf 语句将它设置为那样。但我的问题是如何将下划线与 O 或 X 交换,这样下划线就不会显示。

我们将不胜感激!

最佳答案

printf ("%c_") 将打印一个字符后跟一个下划线。

您需要的是 printf ("%c") 并且参数应该决定您是打印 O、X 还是下划线。

再三考虑,最简单的做法可能是初始化数组,使其在每个空间都有 _,并且您的逻辑应该将其识别为“空”。然后你可以只打印出现在你的数组中的字符。

关于c - 用用户输入的字符替换下划线(在 C 中),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47502042/

相关文章:

javascript - 比较二维数组与一维数组并删除匹配的条目 (JavaScript)

python - 替换 SQL 查询中的值

c - c 中的 fwrite 进入无限循环

C程序切换语句

python - 如何将两个列表合并到一个数组中,这样我就不必对其进行硬编码

Ruby 围绕一个简单的模式查找和替换

Android 如何在一段时间后替换 View ?

c++ - 在文件描述符上设置 FD_CLOEXEC 与将其传递给 posix_spawn_file_actions_addclose 之间有区别吗?

c - 使用 Win32 和视觉样式的按钮背景透明度

python - 从 python 中的二维数组中选择 'area'