#include #include /* exit */ /********************* trace *********************/ void printMatTrace(int mat[2][3], int nbLignes, int nbCols) { int l,c; printf("{"); for(l=0;l<=nbLignes-1;l=l+1) { printf("{"); for(c=0;c<=nbCols-1;c=c+1) { if (c!=nbCols-1) { printf("%d ",mat[l][c]); } else { printf("%d", mat[l][c]); } } printf("}"); } printf("}"); } /***/ void trace(int l, int c, int mat[2][3], int nbLignes, int nbCols,int min) { printf(" %d ",l); printf(" %d ",c); printMatTrace(mat,nbLignes,nbCols); printf(" %d ",min); printf("\n"); } /******************* fin trace *******************/ int getMinMat(int mat[2][3], int nbLignes, int nbCols) { int l,c, min; if (nbLignes==0||nbCols==0) { printf("Mat est vide !\n"); exit(1); } min=mat[0][0]; for(l=0;l<=nbLignes-1;l=l+1) { for(c=0;c<=nbCols-1;c=c+1) { if (mat[l][c] < min) { min = mat[l][c]; } /* trace(l,c,mat,nbLignes,nbCols,min); */ } } return min; } int main(void) { int m[2][3] = { {90, 23, 5} , {4, 50, 67} }; int nbLignes = 2, nbCols = 3; printf("Le min de la matrice est %d\n",getMinMat(m,nbLignes,nbCols)); return 0; }