1: /* matrix00add.c */ 2: #include 3: 4: int main( void ){ 5: 6: /* 変数の宣言 */ 7: int n, m; 8: 9: n = 2; 10: m = 3; 11: 12: /* 配列変数の宣言 */ 13: float a[ n ][ m ], b[ n ][ m ], c[ n ][ m ]; 14: 15: /* カウンタ用変数の宣言 */ 16: int i, j; 17: 18: /* 配列の初期化 */ 19: a[ 0 ][ 0 ] = 2.3; a[ 0 ][ 1 ] = 0.2; a[ 0 ][ 2 ] = 0.1; 20: a[ 1 ][ 0 ] = -0.3; a[ 1 ][ 1 ] = 0.0; a[ 1 ][ 2 ] = -0.5; 21: 22: b[ 0 ][ 0 ] = -1.0; b[ 0 ][ 1 ] = -0.1; b[ 0 ][ 2 ] = 1.8; 23: b[ 1 ][ 0 ] = 0; b[ 1 ][ 1 ] = 2.2; b[ 1 ][ 2 ] = 2.5; 24: 25: /* 行列の和を計算 */ 26: for ( i = 0; i < n; i = i + 1 ) { 27: for ( j = 0; j < m; j = j + 1 ) { 28: 29: c[ i ][ j ] = a[ i ][ j ] + b[ i ][ j ]; 30: 31: } 32: } 33: 34: /* 行列 a の表示 */ 35: printf( " a =\n" ); 36: for ( i = 0; i < n; i = i + 1 ) { 37: printf( " [" ); 38: for( j = 0; j < m; j = j + 1 ) { 39: 40: printf( " %5.2f ", a[ i ][ j ] ); 41: 42: } 43: printf( "]\n" ); 44: } 45: printf( "\n" ); 46: 47: /* 行列 b の表示 */ 48: printf( " b =\n" ); 49: for ( i = 0; i < n; i = i + 1 ) { 50: printf( " [" ); 51: for( j = 0; j < m; j = j + 1 ) { 52: 53: printf( " %5.2f ", b[ i ][ j ] ); 54: 55: } 56: printf( "]\n" ); 57: } 58: printf( "\n" ); 59: 60: /* 行列 c の表示 */ 61: printf( " c = a + b\n" ); 62: for ( i = 0; i < n; i = i + 1 ) { 63: printf( " [" ); 64: for( j = 0; j < m; j = j + 1 ) { 65: 66: printf( " %5.2f ", c[ i ][ j ] ); 67: 68: } 69: printf( "]\n" ); 70: } 71: printf( "\n" ); 72: 73: }