#include #include int max(int a[][4]);//函数声明 int main(int agrc,char*agrv[]) { int a[][4]={{3,6,7,2},{68,5,21,8},{56,8,4,11}}; //int a[][4]={3,6,7,2,68,5,21,8,56,8,4,11};也行 printf("%d\n",max(a));//函数调用 int n1=sizeof(a)/sizeof(int);//总数,int占四个字节n1=12*4/4=12 int n2=sizeof(a)/sizeof(int)/(sizeof(a[0])/sizeof(int));//行数=总数/列数,或者sizeof(a)/sizeof(a[0]) // a[0]指首行地址,每行四列,4*4=16, int n3=sizeof(a)/sizeof(int)/(sizeof(a)/sizeof(a[0]));//列数=总数/行数,或者sizeof(a[0])/sizeof(int),或者sizeof(a[0])/sizeof(a[0][0]) //a[0][0]是首元素,占四个字节 printf("%d %d %d\n",n1,n2,n3); return 0; } int max(int a[][4])//函数定义 { int i,j,max; max=a[0][0]; for(i=0;i<3;i++) { for(j=0;jmax) { max=a[i][j]; } } } return max; }