关于#for#的问题,如何解决?

编写一个函数fun(),功能是找出3行4列二维数组中最大的元素,在主函数中输出结果。
#define N 3
#define M 4
#include"stdio.h"
int fun(int q[N][M])
{int a[N][M],i,j,max;
for(i=0;i<N;i++)
for(j=0;j<M;j++)
scanf("%d",&a[i][j]);
for(i=0;i<N;i++)
max=fun(a);
printf("max=%d",max);
}

问题原因:c(12) : warning C4716: 'fun' : must return a value

你fun函数没有返回值
代码修改如下:


#include <stdio.h>
#define N 3
#define M 4
int fun(int q[N][M])
{
    int i, j, max = q[0][0];
    for (i = 0; i < N; i++)
    {
        for (j = 0; j < M; j++)
        {
            if (q[i][j] > max)
                max = q[i][j];
        }
    }
    return max;
}

int main()
{
    int a[N][M], i, j;
    for (i = 0; i < N; i++)
    {
        for (j = 0; j < M; j++)
            scanf("%d", &a[i][j]);
    }
    printf("max=%d", fun(a));
    return 0;
}