使用随机整数填充2D数组

时间:2014-03-31 02:35:09

标签: c++

int main()
{

    srand(time(NULL));

    int ourArray [3][5] = {0};

    for (int i = 0; i < 3; i++)
    {
        for (int j = 0; j < 5; j++)
        {
            ourArray [i][j] = rand() % 30;
        }
    }

    return 0;
}

这是我到目前为止所做的,但我不太确定从这里开始。我(想)在这里发生的是它在0,0的数组的第一个位置并生成一个数字。然后它进入1,1和2,2,依此类推。我不确定从那里开始,我确信这样做的效率更高,可以一次填充整行或一列。

另外,我的编译器不允许像平时一样使用cout或endl吗?它坚持要我使用std :: cout,我只是想知道为什么。

1 个答案:

答案 0 :(得分:1)

  

我在这里想到的是,它在数组的第一个位置是0,0并生成一个数字。然后它转到1,1和2,2等等。

数组位置按以下顺序填充:

i = 0, j = 0,4

0, 0
0, 1
0, 2
0, 3
0, 4

i = 1, j = 0,4

1, 0
1, 1
1, 2
1, 3
1, 4

i = 2, j = 0,4

2, 0
2, 1
2, 2
2, 3
2, 4

没有更有效的方法用随机数填充整个数组。

要使用coutendl,您必须在文件中加入iostream

#include <iostream>

然后,您可以将其与std::前缀,std::coutstd::endl一起使用。如果您不希望使用std::前缀,则必须通过以下方式指明您正在使用std命名空间:

using namespace std;