添加行和列2d

时间:2013-06-10 12:56:41

标签: c

如何向3X4阵列添加行和列?

输出:

1  2  3  4  10
5  6  7  8  26
9  10 11 12 42

我是否使用for循环?我无法理解。

int main()
{  
    int arr[3][4], r, c;

    for (r=0; r < 3; r++)
     {
         for (c=0; c < 4; c++) 
           {
              arr[r][c] = 1+r+c;

              printf("%d ", arr[r][c]);
           }

           printf("\n");
      }

      system("PAUSE");
      return 0;
}

2 个答案:

答案 0 :(得分:0)

目前,您的矩阵包含以下内容:

1 2 3 4
2 3 4 5
3 4 5 6

arr[r][c] = 1+r+c;更改为arr[r][c] = 1+c+(COLS*r);,其中COLS是矩阵所拥有的列数。

1 2 3 4 
5 6 7 8 
9 10 11 12 

您现在可以遍历每一行并计算总和:

int i, j;
for (i = 0; i < ROWS; ++i) {
    int sum = 0;
    for (j = 0; j < COLS; ++j) {
        sum += arr[i][j];
    }
    printf("%d\n", sum);
}

答案 1 :(得分:0)

    int arr[3][4], r, c, i = 1;

    for (r=0; r < 3; r++){
        int sum = 0;
        for (c=0; c < 4; c++){
            arr[r][c] = i++;
            sum += arr[r][c];
            printf("%2d ", arr[r][c]);
        }
        printf("%d\n", sum);
    }