ここからは、いくつかのプログラムの例を見ながらさらなるCプログラミングの方法を説明していく。
この章では内積を計算するプログラムを例に前処理、配列について見ていく。 内容は、はじめに 2 つのベクトル vec1, vec2 に初期値を代入し、ベ クトル vec3 に計算結果を代入し、最後に結果を出力する。
scapro.c ------------------------------------------------------------- #include<stdio.h> #define L 1 #define M 3 #define N 1 int main(){ int i,j,k, sum; int vec1[L][M]={1,2,3}; int vec2[M][N]={5,6,7}; int vec3[L][N]; for(i = 0; i < L; i++){ for(j = 0; j < N; j++){ sum = 0.; for(k = 0; k < M; k++){ sum = sum+vec1[i][k]*vec2[k][j]; } vec3[i][j] = sum; } } printf("vec1 = (%d, %d, %d) \n",vec1[0][0],vec1[0][1],vec1[0][2]); printf("vec2 = (%d, %d, %d) \n",vec2[0][0],vec2[1][0],vec2[2][0]); printf("vec1・vec2 = %d \n",vec3[0][0]); } 実行結果 ------------------------------------------------------------- s1:~/c_text> gcc -o scapro scapro.c s1:~/c_text> ./scapro vec1 = (1, 2, 3) vec2 = (5, 6, 7) vec1・vec2 = 38 s1:~/c_text> ----------------------------------------------------------------------