How to create an M x N matrix with random numbers in C

1 Answer

0 votes
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
 
#define ROWS 4
#define COLS 5
 
void printMatrix(int matrix[][COLS], int rows, int cols) {
    for (int i = 0; i < rows; i++) {  
        for (int j = 0; j < cols; j++) {
            printf("%4d", matrix[i][j]);
        } 
        printf("\n");
    }
}
  
int generateRandomInteger(int min, int max) {
    return min + rand() / (RAND_MAX / (max - min + 1) + 1);
    // return rand() % (max - min + 1) + min;
}
      
void generateRandomMatrix(int matrix[][COLS], int rows, int cols) {
    srand(time(NULL));
     
    for (int i = 0; i < rows; i++) {     
        for (int j = 0; j < cols; j++) {
            matrix[i][j] = generateRandomInteger(1, 100);
        }
    }
}
 
int main() {
    int matrix[ROWS][COLS] = {{ 0 }};
     
    generateRandomMatrix(matrix, ROWS, COLS);
        
    printMatrix(matrix, ROWS, COLS);
     
    return 0;
}
 
 
 
 
/*
run:
  
  15  92  63  99  46
  57  84  41   6   1
  91  99  81  59   6
  86  60  96  56  43
  
*/

 



answered May 16, 2024 by avibootz
...