Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/138.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
用C++实现二维数组随机数发生器 嗨,我对C++很陌生,想知道你们是否能帮助我。现在我只是照本宣科,老师让我做的事情可能会让一些东西看起来不一样_C++_Arrays_Random_Multidimensional Array - Fatal编程技术网

用C++实现二维数组随机数发生器 嗨,我对C++很陌生,想知道你们是否能帮助我。现在我只是照本宣科,老师让我做的事情可能会让一些东西看起来不一样

用C++实现二维数组随机数发生器 嗨,我对C++很陌生,想知道你们是否能帮助我。现在我只是照本宣科,老师让我做的事情可能会让一些东西看起来不一样,c++,arrays,random,multidimensional-array,C++,Arrays,Random,Multidimensional Array,我想做的是让我的void随机生成器将数字放入我的2D数组,然后它进入main。然后我让它进入我的显示功能,但由于某种原因,我不能让它正常工作。你们能帮帮我吗 编辑:好吧,我想这与我的随机数生成器没有将数字放入数组有关,但不确定原因。因为我的数字生成器使用1D数组进行查找 #include <iostream> #include <cstdlib> #include <ctime> #include <iomanip> using namespac

我想做的是让我的void随机生成器将数字放入我的2D数组,然后它进入main。然后我让它进入我的显示功能,但由于某种原因,我不能让它正常工作。你们能帮帮我吗

编辑:好吧,我想这与我的随机数生成器没有将数字放入数组有关,但不确定原因。因为我的数字生成器使用1D数组进行查找

#include <iostream>
#include <cstdlib>
#include <ctime>
#include <iomanip>

using namespace std;

//Globral Varaibles Must be on top 
const int max = 100;
const int min = 1;
const int COL = 4;
const int Rows = 3;

//Functions
void Population(int Array[][COL], int size);
void Show(const int Array[][COL], int max);

int main()
{
     int a[3][4];
     Population(a, Rows);
     Show(a, Rows);
}

void Population( int Array[][COL], int size)
{
    for (int index = 0; index < Rows; index++)
    {
        for (int Count = 0; Count < COL; Count++)
        {
               unsigned seed = time(0);
               Array[index][Count] = (rand() % (max - min + 1)) + min;
        }
    }
}

void Show(const int a[][COL], int Rows)
{
    for (int i = 0; i < Rows; i++)
    {
        for (int J = 0; J < COL; J++)
        {
            cout << setw(4) << a[i][J] << endl;
        }
    }
    cout << endl;
    cout << endl;
}

每次在填充中输入第二个for循环时,您似乎都在播种您的随机数生成器。在一个程序中,您应该只在靠近开始的地方对随机数生成器进行一次种子设定

尝试从种群中删除种子系,而使用

srand(time(NULL));

在你主要的

开始时,啊,我解决了这个问题。我一直误以为显示的是一个巨大的列,而不是分为行和列

我必须在a[I][J]部分后面有一个小的空间,以便可以将其分为行和列

cout << setw(4) << a[a][J] << " ";

那个骑士谢谢你的建议。现在我的生成器终于输出了随机数

这些逗号在干什么?你能从你的工具中选择代码并在你的帖子中重新粘贴代码吗。然后选择代码并按control+k@goedkoop:很明显,它们不是逗号,而是用来分隔代码的记号。一个好的编辑应该是把它们编辑掉,而不是把它们留在那里,现在它们的格式是代码。。。不幸地robo审查员接受了您的编辑,没有发表任何评论。很抱歉,我们对如何使编码与该格式兼容感到困惑。您可以忽略未签名的see行,因为我认为它可以帮助我更改数字,但现在它只是显示60至于在主机上安装数字发生器。我不能这样做,因为老师希望所有的代码都有不同的功能。一个是生成器,另一个是显示函数。没关系,我把种子行移到main中,让它打出随机数,但它仍然对一列这样做。它会把它放进柱子里。