#include <stdio.h>
// ★ ここが指定された形の calculate 関数
void calculate(int (*a)[4])
{
int i, j;
int sum;
for (i = 0; i < 3; i++) { // 行番号 0〜2
sum = 0; // その行の合計を 0 にする
for (j = 0; j < 4; j++) { // 列番号 0〜3
sum = sum + a[i][j]; // 足し算
}
printf("行%dの合計 = %d\n", i
, sum
); }
}
int main(void)
{
// 3行4列の2次元配列を作る
int a[3][4] = {
{1, 2, 3, 4},
{5, 6, 7, 8},
{9, 10, 11, 12}
};
// calculate に a を渡して実行!
calculate(a);
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CgovLyDimIUg44GT44GT44GM5oyH5a6a44GV44KM44Gf5b2i44GuIGNhbGN1bGF0ZSDplqLmlbAKdm9pZCBjYWxjdWxhdGUoaW50ICgqYSlbNF0pCnsKICAgIGludCBpLCBqOwogICAgaW50IHN1bTsKCiAgICBmb3IgKGkgPSAwOyBpIDwgMzsgaSsrKSB7ICAgLy8g6KGM55Wq5Y+3IDDjgJwyCgogICAgICAgIHN1bSA9IDA7ICAgICAgICAgICAgICAgLy8g44Gd44Gu6KGM44Gu5ZCI6KiI44KSIDAg44Gr44GZ44KLCgogICAgICAgIGZvciAoaiA9IDA7IGogPCA0OyBqKyspIHsgIC8vIOWIl+eVquWPtyAw44CcMwogICAgICAgICAgICBzdW0gPSBzdW0gKyBhW2ldW2pdOyAgLy8g6Laz44GX566XCiAgICAgICAgfQoKICAgICAgICBwcmludGYoIuihjCVk44Gu5ZCI6KiIID0gJWRcbiIsIGksIHN1bSk7CiAgICB9Cn0KCmludCBtYWluKHZvaWQpCnsKICAgIC8vIDPooYw05YiX44GuMuasoeWFg+mFjeWIl+OCkuS9nOOCiwogICAgaW50IGFbM11bNF0gPSB7CiAgICAgICAgezEsICAyLCAgMywgIDR9LAogICAgICAgIHs1LCAgNiwgIDcsICA4fSwKICAgICAgICB7OSwgMTAsIDExLCAxMn0KICAgIH07CgogICAgLy8gY2FsY3VsYXRlIOOBqyBhIOOCkua4oeOBl+OBpuWun+ihjO+8gQogICAgY2FsY3VsYXRlKGEpOwoKICAgIHJldHVybiAwOwp9Cg==