#include #define MAXDIM 50 typedef struct { unsigned int r; /* row dimension */ unsigned int c; /* column dimension */ int elt[MAXDIM][MAXDIM]; /* 2-d array of the elements of the matrix */ } matrix; void printMat ( matrix M ) { } int printMatZ ( matrix M, int neltp ) { matrix N; int i,j,n; /* No recursive calls are made for 1 x 1 matrices */ if (M.r == 1) { printf("%5d", M.elt[0][0]); if (++neltp == 15) { printf("\n"); neltp = 0; } return neltp; } /* Set the dimensions of the submatrices */ n = (M.r) / 2; N.r = N.c = n; /* Recursively print the top left submatrix */ for (i=0; i