如何在 2d 数组中绘制 X?C++
How do you draw an X in a 2d array? C++
假设foo[10][10]已经充满了' ' 这是到目前为止我的代码:
for(int q = 0; q <10; q++)
{
foo[q][q] = 'x';
}
这从左上角画了一条线到右下角,但我无法弄清楚如何在不放入另一个循环的情况下从左下角画一条线到右上角。我知道这很简单,但我认为我错过了一个重要的逻辑。
你能用一个循环来做一个X,还是我在浪费时间?
for(int q = 0; q <10; q++)
{
foo[q][q] = 'x';
foo[q][10 - q - 1] = 'x';
}
10 - q - 1 = 9 - q
9
是数组的最大索引。
是的,可以使用具有多个变量的单个循环来完成。由于 i 增加的值 j 的值正在减小。因此 foo[j][i] 将指
foo[9][0] for the first iteration
foo[8][1] for the second iteration
foo[7][2] for the third iteration
.....
till
foo[0][9] for the last iteration
这使得循环按照您的要求沿着对角线从左下角到右上角放置"X"。
for(int q = 0 ,int j=9 ; q <10; q++,j--)
{
foo[q][q] = 'x';
foo[j][q] = 'x';
}
相关文章:
- QuadTree只在窗口的右上角绘制
- 绘制旋转的三角形
- flutter:即使shouldRepaint()返回true,自定义画家也不会重新绘制
- 如何在QT中的自定义视频小工具t上绘制矩形
- 如何在Visual Basic中使用矩形函数OpenGL绘制矩形
- 无法使用VAO和EBO(openGL)绘制多个对象
- 为什么我的点没有在 OpenGL 中绘制鼠标所在的位置?
- 绘制顺时针三角形,重新排序点
- 在顶点着色器中使用 OpenGl 的未声明标识符,我在顶点着色器中绘制三角形时遇到问题
- SFML 文本未绘制在窗口上
- 如何在快板的屏幕中显示子位图的绘制?
- 如何绘制自定义形状的元素?
- QPainter 将 QBrush 设置为 在 QT/C++ 中绘制文本
- 除非重新绘制大小,否则SDL_Texture在调整大小后呈现黑色
- 绘制文本问题
- 在 QT C++中绘制/操作多边形
- 如何在 Gnuplot 中分别绘制 2 个文件数据?我有一个文件"sin.txt",另一个文件"cos.txt",我想将它们分别绘制在一个图表上
- 在现代OpenGL中,绘制GL_TRIANGLE奇怪的z轴行为的填充圆
- OpenGL 着色器不绘制任何东西 - 糟糕的精灵类
- 要在屏幕上绘制一些小瓷砖,我应该使用 QQuickItem 还是 QQuickPaintedItem?