Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C 用于查找二维数组中的行和列之和的程序函数_C_Arrays - Fatal编程技术网

C 用于查找二维数组中的行和列之和的程序函数

C 用于查找二维数组中的行和列之和的程序函数,c,arrays,C,Arrays,我有程序体,我的大部分错误都在我的函数中。我已尝试修复它,但无法更改数据类型 #include <stdio.h> int sumrow (int matrix); int sumcol (int matrix); int main () { int matrix [3][4] = { {5, 7, 4, 8}, {6, 8, 2, 4}, {2, 7, 9, 6} }; int sum; sumrow = matrix[3][4]; [错误]函数“int-sumcol(i

我有程序体,我的大部分错误都在我的函数中。我已尝试修复它,但无法更改数据类型

#include <stdio.h>

int sumrow (int matrix);
int sumcol (int matrix);

int main () {

int matrix [3][4] = { {5, 7, 4, 8}, {6, 8, 2, 4}, {2, 7, 9, 6} };
int sum;

sumrow = matrix[3][4];
[错误]函数“int-sumcol(int)”的赋值 [错误]无法将分配中的“int”转换为“int(int)” 这里的错误是相同的,我可能没有正确地调用错误

return 0;
}


int sumrow (int matrix){
int i, j, sum = 0;

for (i = 0; i < 4; ++i) 
    {
        for (j = 0; j < 3; ++j) 
        {
            sum = sum + matrix[i][j] ;

子例程应定义为采用2D数组而不是单个int。请注意,可以将最左边的维度保留为空

int sumrow (int matrix[][4]){
    int i, j, sum = 0;  
    for (i = 0; i < 4; ++i)
    etc... 
sumrow的返回值应为您计算的总和:

return sum;

int-sumcol(int-matrix)
sumcol=矩阵[3][4]
:sumcol
应该是函数还是int?与
int-sumrow(int-matrix)相同的问题
。您在此处访问数组外部的内存:
sumrow=matrix[3][4]
sumcol=矩阵[3][4]
int-sumrow(int-matrix)
应该是
int-sumrow(int-matrix[3][4])
并且调用应该是
sumrow(matrix)
        }
    }
return printf("Sum of the %d column is = %d\n", sum);
 }
int sumrow (int matrix[][4]){
    int i, j, sum = 0;  
    for (i = 0; i < 4; ++i)
    etc... 
int sum = sumrow(matrix);
return sum;