C 声明double类型的二维数组?
我得到了下面列出的一个函数,我必须为它创建代码,以找到1x1、2x2或3x3矩阵的行列式C 声明double类型的二维数组?,c,C,我得到了下面列出的一个函数,我必须为它创建代码,以找到1x1、2x2或3x3矩阵的行列式 double det (int size, double matrix[size][size]) { 它需要一个double类型的二维数组,作为一个初学者,我不熟悉它,也不知道如何声明它。我在网上查了一下,什么也没找到。我的想法是int[][],但没有任何效果。有什么想法吗?使用C btw,谢谢 例如,如果我使用 int main() { double test[2][2] = {{1.0,2.0},{2
double det (int size, double matrix[size][size]) {
它需要一个double类型的二维数组,作为一个初学者,我不熟悉它,也不知道如何声明它。我在网上查了一下,什么也没找到。我的想法是int[][],但没有任何效果。有什么想法吗?使用C btw,谢谢
例如,如果我使用
int main() {
double test[2][2] = {{1.0,2.0},{2.0,3.0}};
det(2, test);
return(0);}
我试图用
double det (int size, double matrix[size][size]) {
double matrix[size][size];
但是我得到了错误
/tmp/tmpwhrzhcqq.c: In function ‘det’:
/tmp/tmpwhrzhcqq.c:9:10: error: ‘matrix’ redeclared as different kind of symbol
9 | double matrix[size][size];
| ^~~~~~
/tmp/tmpwhrzhcqq.c:8:30: note: previous definition of ‘matrix’ was here
8 | double det (int size, double matrix[size][size]) {
| ~~~~~~~^~~~~~~~~~~~~~~~~~
删除不需要的
双矩阵[size][size]代码>声明<功能参数列表中的代码>矩阵
就足够了
如果代码需要另一个矩阵,请使用新名称
注意:代码正在使用C99和一些更高版本的编译器中提供的功能
double det (int size, double matrix[size][size]) {
// double matrix[size][size];
double some_other_matrix[size][size];
double d = 0.0;
for (int row = 0; row < size; row++) {
for (int vol = 0; col < size; col++) {
; // your det code
}
; // your det code
}
return d;
}
double det(整数大小,双矩阵[size][size]){
//双矩阵[大小][大小];
加倍一些其他矩阵[大小][大小];
双d=0.0;
对于(int row=0;row
这是否回答了您的问题?与您在函数det
中使用的方法相同,但使用了代码>在末尾<代码>双矩阵[大小][大小]代码>您还可以根据大小分配适当的元素没有任何功能。请说得更具体些。发布一些您正在处理的尝试代码和特定错误。在编辑中,double matrix[size][size]
既是一个函数参数又是一个局部变量:不能在同一个作用域中同时使用同一个名称。