0

我在这里写了一个矩阵,它在屏幕上显示得很好,但我想把符号放进去。我似乎无法让符号 (X) 出现在其中。抱歉,这是我第一次使用数组。

#include <iostream>
#define WIDTH 70    
#define HEIGHT 20
using namespace std;

void main ()
{
    char world[HEIGHT][WIDTH];
    // draws matrix
    for ( char i = 0; i < HEIGHT; i++ ) {
            for ( char j = 0; j < WIDTH; j++ ) {
                world[i][j] = '.';
                cout << world[i][j];
            }
            cout << endl;
    }
    // 1st symbol at coordinates 1, 1
    int x, y;
    x = 1, y = 1;
    world[x][y] = 'x';
    cout << world[x][y];

    // 2nd symbol at coordinates 2, 2
    x = 2, y = 2;
    world[x][y] = 'x';
    cout << world[x][y];

    //so on..

}

4

2 回答 2

0

您必须先插入xs,然后打印网格,而不是相反。

于 2013-04-05T19:13:24.603 回答
0

首先,main应该声明为要么int main()int main(int argc, const char* argv[]);它当然不会返回void

标准输出cout按顺序工作。您只需告诉它要打印什么,它就会一个接一个地打印。考虑以下:

int x = 1;
std::cout << x;
x = 2;
std::cout << x;

因为我们更改了 的值,x然后cout再次将其传递给,所以您似乎期望输出为:

2

实际上输出是:

12

cout不在乎我们将相同的变量传递了两次。它只是一个接一个地打印我们给它的每一件事。

你将不得不设置你想成为的矩阵的每个元素'x',然后再次循环并打印出来。

于 2013-04-05T19:15:58.327 回答