函数在数组中生成随机数

Akr*_*ios 0 c arrays random numbers

我正在尝试创建一个为数组创建随机数的函数.这是我的代码.

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

#define ROW 22
#define COL 80


void display(int life[ROW][COL]){
    for(int i = 0; i<ROW; i++){
        for(int j=0; j<COL; j++){
            printf("%d",life[i][j]);
        }
        printf("\n");
    }
}
void initialize_board(int life[ROW][COL]){
    for(int i = 0; i< ROW;i++){
        for(int j = 0; j<COL ; j++){
            life[ROW][COL] = rand()%2;
        }
    }
}
int main() {
    srand(getpid());
    printf("PID: %d\n",getpid());
    int life[22][80] = {0};
    initialize_board(life);
    display(life);
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

但是我得到的输出是0而不是随机分配给0或1.

Win*_*ute 5

代替

life[ROW][COL] = rand()%2;
Run Code Online (Sandbox Code Playgroud)

使用

life[i][j] = rand()%2;
Run Code Online (Sandbox Code Playgroud)

在那个循环里面.

就目前而言,您将所有随机值写入数组末尾稍后的相同(无效)内存地址.