c语言:请编写一个函数fun,函数的功能是:求出N×M整型数组的最大元素及其行下标和列下标

我都已经改的跟小伙伴一模一样了,为啥他的就没问题,而我的一堆错误啊,求大神解答。在此先谢过了。请编写一个函数fun,函数的功能是:求出N×M整型数组的最大元素及其行下标和... 我都已经改的跟小伙伴一模一样了,为啥他的就没问题,而我的一堆错误啊,求大神解答。在此先谢过了。
请编写一个函数fun,函数的功能是:求出N×M整型数组的最大元素及其行下标和列下标,(如果最大元素不唯一,选择位置在最前面的一个)。
例如:输入的数组为:
1 2 3
4 15 6
12 18 9
10 11 2
求出的最大数为18,行下标为2,列下标为1.
#include<stdio.h>
#define N 4;
#define M 3;
int fun(int a[N][M])
{
int i,j,m=0,n=0,max;
max=a[0][0];
for(i=0;i<N;i++)
{
for(j=0;j<M;j++)
{
if(max<a[i][j])
{
max=a[i][j];
m=i;
n=j;
}
}
}
printf("最大数为%d,行下标为%d,,列下标为%d.",max,m,n);
return 0;
}
int main()
{
int i,j,a[N][M];
for(i=0;i<N;i++)
for(j=0;j<M;j++)
scanf("%d",&a[i][j]);
fun(a);
return 0;
}
下面是电脑给的调试结果。
: error C2143: syntax error : missing ']' before ';'
: error C2143: syntax error : missing ')' before ';'
: error C2059: syntax error : ']'
: error C2059: syntax error : ']'
: error C2059: syntax error : ')'
: error C2143: syntax error : missing ']' before ';'
: error C2143: syntax error : missing ';' before ']'
: error C2143: syntax error : missing ';' before ']'
: error C2143: syntax error : missing ')' before ';'
: error C2059: syntax error : ')'
: error C2143: syntax error : missing ';' before 'for'
: error C2143: syntax error : missing ')' before ';'
: error C2059: syntax error : ')'
: error C2146: syntax error : missing ';' before identifier 'scanf'
: error C2109: subscript requires array or pointer type
: error C2102: '&' requires l-value
执行 cl.exe 时出错.
展开
 我来答
刀无极啊
推荐于2016-03-26 · TA获得超过3768个赞
知道大有可为答主
回答量:2960
采纳率:85%
帮助的人:947万
展开全部
int fun(int a[N][M])//数组的大小是传不过去的,应该改成int fun(int a[][],int m,int n),当然你并没有用到数组的大小,所以你的写法没错,你的宏定义错了
#define N 4;
#define M 3;
不要加分号啊,宏定义不是一个语句,把宏定义后面的分号去掉就行了
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式