编写一个函数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;
}