1: /* vector00func03.c */ 2: /* 関数 add_vec その 03 */ 3: #include 4: 5: /*関数 add_vec のプロトタイプ宣言 */ 6: void add_vec( int, float x[ ], float y[ ], float z[ ] ); 7: 8: 9: int main( void ){ 10: 11: /* 変数の宣言 */ 12: int n; 13: 14: n = 3; 15: 16: /* 配列変数の宣言 */ 17: float a[ n ], b[ n ], c[ n ]; 18: 19: /* カウンタ用変数の宣言 */ 20: int i; 21: 22: /* 配列の初期化 */ 23: a[ 0 ] = 2.3; a[ 1 ] = -0.3; a[ 2 ] = 1.2; 24: 25: b[ 0 ] = -1.0; b[ 1 ] = 0; b[ 2 ] = 0.1; 26: 27: /* ベクトルの和を計算 */ 28: add_vec( n, a, b, c ); 29: /* for ( i = 0; i < n; i = i + 1 ) { */ 30: 31: /* c[ i ] = a[ i ] + b[ i ]; */ 32: 33: /* } */ 34: 35: /* 結果を表示 */ 36: printf( " a = ( %5.2f %5.2f %5.2f )\n", a[ 0 ], a[ 1 ], a[ 2 ] ); 37: printf( " b = ( %5.2f %5.2f %5.2f )\n", b[ 0 ], b[ 1 ], b[ 2 ] ); 38: printf( "c = a + b = ( %5.2f %5.2f %5.2f )\n", c[ 0 ], c[ 1 ], c[ 2 ] ); 39: 40: return 0; 41: 42: } 43: 44: 45: /*関数 add_vec */ 46: void add_vec( int n, float x[ ], float y[ ], float z[ ] ){ 47: 48: /* カウンタ用変数の宣言 */ 49: int i; 50: 51: /* ベクトルの和を計算 */ 52: for ( i = 0; i < n; i = i + 1 ) { 53: 54: z[ i ] = x[ i ] + y[ i ]; 55: 56: } 57: 58: }