2行3列の行列の和を求めるプログラム
#include <stdio.h> /*--- 2行3列の行列maとmbの和をmcに格納する ---*/ void mat_add(const int ma[][3], const int mb[][3], int mc[][3]) { int i, j; for (i = 0; i < 2; i++) for (j = 0; j < 3; j++) mc[i][j] = ma[i][j] + mb[i][j]; } int main(void) { int i, j; int ma[2][3] = { {1, 2, 3}, {4, 5, 6} }; int mb[2][3] = { {6, 3, 4}, {5, 1, 2} }; int mc[2][3] = { 0 }; mat_add(ma, mb, mc); for (i = 0; i < 2; i++) { for (j = 0; j < 3; j++) printf("%3d", mc[i][j]); putchar('\n'); } return (0); }
実行結果
7 5 7
9 6 8
多次元配列の受け渡し
多次元配列を受け取る仮引数の宣言では、最初の要素数は省略できる。
void mat_add(const int ma[][3], const int mb[][3], int mc[][3])