How to initialize part of 2D array in C

2 Answers

0 votes
#include <stdio.h>

int main(void)
{
    int arr[4][3] = { 3, 9, 4, 7, 1 };

    int rows = (sizeof(arr) / sizeof(arr[0]));
    int cols = (sizeof(arr) / sizeof(arr[0][0])) / rows;

    for (int i = 0; i < rows; i++) {
        for (int j = 0; j < cols; j++) {
            printf("%3d", arr[i][j]);
        }
        printf("\n");
    }

    return 0;
}



/*
run:

  3  9  4
  7  1  0
  0  0  0
  0  0  0

*/

 



answered Apr 24, 2023 by avibootz
0 votes
#include <stdio.h>

int main(void)
{
    int arr[4][3] = { 3, 8, 4, 7, [3][1] = 99};

    int rows = (sizeof(arr) / sizeof(arr[0]));
    int cols = (sizeof(arr) / sizeof(arr[0][0])) / rows;

    for (int i = 0; i < rows; i++) {
        for (int j = 0; j < cols; j++) {
            printf("%3d", arr[i][j]);
        }
        printf("\n");
    }

    return 0;
}



/*
run:

  3  8  4
  7  0  0
  0  0  0
  0 99  0

*/

 



answered Apr 24, 2023 by avibootz

Related questions

1 answer 111 views
1 answer 99 views
99 views asked May 19, 2022 by avibootz
1 answer 187 views
1 answer 103 views
...