// test using direct 3x4 array // #include #include void aprint( int a[], int n) // print an integer array of any size (using size n) { for( int i = 0; i < n; ++i) printf( " %i", a[i]); putchar('\n'); } // void a2print( int a[][4], int m, int n) { // only for size 4 rows void a2print( int m, int n, int a[m][n] ) { // print 2D array of any size (using size m-by-n) for( int i = 0; i < m; ++i) { // for( int j = 0; j < n; ++j) printf( " %i", a[i][j]); // printf( "\n"); aprint( a[i], n); } } int main( void) { int a[3][4]; for( int i = 0; i < 3; ++i) for( int j = 0; j < 4; ++j) a[i][j] = 4*i + j; /* for( int i = 0; i < 3; ++i) { // for( int j = 0; j < 4; ++j) printf( " %i", a[i][j]); // printf( "\n"); aprint( a[i], 4); } */ // a2print( a, 3, 4); a2print( 3, 4, a); aprint( a[0], 12); return 0; } /* output: 0 1 2 3 4 5 6 7 8 9 10 11 0 1 2 3 4 5 6 7 8 9 10 11 */