编译错误error C2143: syntax error : missing ';' before 'type'
#include<stdio.h>voidmain(){intN,s,i,j;scanf("%d",&N);inta[N][N],(*p)[N]=&a;for(i=0,j...
#include<stdio.h>
void main()
{int N,s,i,j;
scanf("%d",&N);
int a[N][N],(*p)[N]=&a;
for(i=0,j=0;i<N;i++,j++)
scanf("%d",&a[i][j]);
int fun(int (*q)[N]);
s=fun(p);
printf("%d",s);
}
int fun(int (*q)[N])
{int s=0,i,j;
for(i=0,j=0;i<N;i++,j++)
s=s+q[i][j]+q[i][N-j-1];
return s;
} 展开
void main()
{int N,s,i,j;
scanf("%d",&N);
int a[N][N],(*p)[N]=&a;
for(i=0,j=0;i<N;i++,j++)
scanf("%d",&a[i][j]);
int fun(int (*q)[N]);
s=fun(p);
printf("%d",s);
}
int fun(int (*q)[N])
{int s=0,i,j;
for(i=0,j=0;i<N;i++,j++)
s=s+q[i][j]+q[i][N-j-1];
return s;
} 展开
展开全部
首先你得先声明函数fun,然后才能调用,还有看你的main里面,读N,再int a[N][N],这就无敌错了,因为你这是属于静态分配的数组,大小必须得是常数,你这是变量,而int a[10],就行,你如果想动态的话,需要用malloc或者new操作符(别忘了free或delete),你的fun函数传的参数没看懂,C预言好好学,然后学C++
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询