Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/65.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/14.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_Arrays - Fatal编程技术网

C 尝试随机化数组,但每次都会得到相同的随机化结果

C 尝试随机化数组,但每次都会得到相同的随机化结果,c,arrays,C,Arrays,因此,我创建了一个代码,允许用户输入数组的大小。然后每个值都设置为0。然后程序获取该代码,然后向数组中随机添加1。然后它输出数组,在0处打印“.”,在1处打印“*”,但它不会在每次打印时随机化1和0的位置。我只是不断得到1和0的相同布局。我是否遗漏了一行代码,或者只是需要重新安排 #include <stdio.h> #include <stdlib.h> #include <time.h> solid() { int width, height;

因此,我创建了一个代码,允许用户输入数组的大小。然后每个值都设置为0。然后程序获取该代码,然后向数组中随机添加1。然后它输出数组,在0处打印“.”,在1处打印“*”,但它不会在每次打印时随机化1和0的位置。我只是不断得到1和0的相同布局。我是否遗漏了一行代码,或者只是需要重新安排

#include <stdio.h>
#include <stdlib.h>
#include <time.h>

solid()
{
    int width, height;
    int* myEnvironment(int width, int height, int numWoodchips);
    printf("\nEnter rows and columns : "); 
     scanf("%d %d", &width, &height);

    int myArray[width][height];

    void printEnvironment(int* environment, int width, int height); 
        int i,j;
        printf("\n>Creating grid of size [%d][%d]\n", width, height);

      for (i = 0; i < width; i++)
        {
            for (j = 0; j < height; j++)
             {
                myArray[i][j] = rand() %2;
                if(myArray[i][j]==0)
                     printf("."); 
                else if(myArray[i][j]==1)
                     printf("*");     
             }
        } 

            printf("\n");

        printf("\n>grid of size [%d][%d] created \n", width, height);
        return (myArray[i][j]);
#包括
#包括
#包括
固体()
{
int宽度、高度;
int*myEnvironment(int宽度、int高度、int numWoodchips);
printf(“\n输入行和列:”);
扫描频率(“%d%d”、&宽度和高度);
int myArray[宽度][高度];
void printEnvironment(int*环境、int宽度、int高度);
int i,j;
printf(“\n>创建大小为[%d][%d]\n”、宽度、高度的网格);
对于(i=0;i创建了[%d][%d]大小的网格,\n”、宽度、高度);
返回(myArray[i][j]);

我需要返回不同的内容吗?

在C中找不到一个好的dupe候选对象

加:


在开始使用
rand()
之前,这是一个很难预测的问题(对于本用例)值,并使其返回一个不同的数字序列。

您正在显示的代码对于您正在显示的函数甚至都不完整。您是否正在初始化随机数生成器?您如何知道即使是所显示的函数也不完整时会出问题?胡乱猜测?@luk32我认为不太胡乱,代码显示了使用
rand()
并且描述与这个“问题”相匹配。许多初学者不理解这一点
rand()
只是一个PRNG,需要植入。@放松抱歉,我的意思不是个人冒犯,我只是不喜欢人们在回答拙劣问题时猜测,而不让他们改进问题本身。没有上下文,没有人可以说他是否初始化了生成器,OP应该知道这一点。也许我个人受到了伤害,因为我写了一篇文章评论,而不是在我只有90%的时候回答这个问题。我觉得我个人有点过火了。但是,没有人会知道这是不是问题。@luk32别担心!我不是那么容易被冒犯的。:)我理解你的动机,我对没有花足够的精力改进问题感到内疚。一些很多时候,这让人觉得毫无意义,所以很多提问的人似乎并不在意这一点,他们只是想要一个快速的回答/
srand(time(NULL));