Welcome to collectivesolver - Programming & Software Q&A with code examples. A website with trusted programming answers. All programs are tested and work.

Contact: aviboots(AT)netvision.net.il

Buy a domain name - Register cheap domain names from $0.99 - Namecheap

Scalable Hosting That Grows With You

Secure & Reliable Web Hosting, Free Domain, Free SSL, 1-Click WordPress Install, Expert 24/7 Support

Semrush - keyword research tool

Boost your online presence with premium web hosting and servers

Disclosure: My content contains affiliate links.

39,971 questions

51,913 answers

573 users

How to get random N rows from a 2D array in C

1 Answer

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

#define ROWS 6
#define COLS 4

void print_row(int arr[ROWS][COLS], int row) {
    printf("row : %d\n", row);
    
    for (int j = 0; j < COLS; j++) {
        printf("%d ", arr[row][j]);
    }
    
    printf("\n");
}

int main() {
    int arr[ROWS][COLS] = {
        {1, 3, 5, 0},
        {6, 8, 9, 1},
        {2, 3, 4, 5},
        {8, 6, 7, 9},
        {5, 7, 8, 3},
        {9, 8, 7, 4}
    };

    int N = 2;
    srand((unsigned int)time(NULL));

    for (int i = 0; i < N; i++) {
        int row = rand() % ROWS;
        print_row(arr, row);
    }

    return 0;
}

    
/*
run:

row : 3
8 6 7 9 
row : 0
1 3 5 0 

    
*/

 



answered Nov 2, 2025 by avibootz
...