在线等,关于二维数组传参
  • 板块学术版
  • 楼主Ben幻影
  • 当前回复16
  • 已保存回复16
  • 发布时间2021/9/29 19:14
  • 上次更新2023/11/4 05:22:28
查看原帖
在线等,关于二维数组传参
354482
Ben幻影楼主2021/9/29 19:14

事情是这样的,要搞一个行列式求值,函数没问题,但是出现了ce。

请问这个Deva函数怎么传二维数组。

//开头及准备部分 
#include<bits/stdc++.h>
using namespace std;
//行列式求值 
int Deva(int **a,int n){
	int ans=0,flag=1;
	for(int i=0;i<=n;i++){
		for(int j=0;j<=n;j++){
			flag*=a[(i+j-1)%n][(j)%n];
		}
		ans+=flag;
		flag=1;
	}
	for(int i=n-1;i>=0;i++){
		for(int j=0;j<=n;j++){
			flag*=a[(i-j+1)%n][(j)%n];
		}
		ans-=flag;
		flag=1;
	}
	return ans;
} 
//主函数 
int n,a[10001][10001];
int main(){
	cin>>n;
	for(int i=0;i<=n;i++){
		for(int j=0;j<=n;j++){
			cin>>a[i][j];
		}
	}
	cout<<Deva(a,n);
	return 0;
}

最后是cout<<Deva(a,n); 这里报的错。

下面是dev-c++的报错信息:

[Error] cannot convert 'int (*)[10001]' to 'int**' for argument '1' to 'int Deva(int**, int)'

在线等,急

2021/9/29 19:14
加载中...