C言語で2次元配列の各行の合計を求める方法
2次元配列の各行の合計を求めるには、2重ループで2次元配列を反復処理して、内側のループで各行の合計を求めます。以下は、この機能を実現するサンプルコードです。
#include <stdio.h>
#define ROWS 3
#define COLS 4
void rowSum(int array[][COLS], int rowSumArray[]) {
for (int i = 0; i < ROWS; i++) {
int sum = 0;
for (int j = 0; j < COLS; j++) {
sum += array[i][j];
}
rowSumArray[i] = sum;
}
}
int main() {
int array[ROWS][COLS] = {
{1, 2, 3, 4},
{5, 6, 7, 8},
{9, 10, 11, 12}
};
int rowSumArray[ROWS];
rowSum(array, rowSumArray);
printf("各行的和为:\n");
for (int i = 0; i < ROWS; i++) {
printf("第 %d 行的和为:%d\n", i + 1, rowSumArray[i]);
}
return 0;
}
下記の結果を出力する:
各行的和为:
第 1 行的和为:10
第 2 行的和为:26
第 3 行的和为:42
上記のサンプルコードでは、rowSum関数が各行の和を計算し、rowSumArray配列に格納します。main関数では、二次元配列arrayを定義し、rowSum関数を呼び出して各行の和を計算します。最後に、printf関数を使用して各行の和を出力します。