如何向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;
}
答案 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);
}