001、
[root@PC1 test]# ls test.c [root@PC1 test]# cat test.c ## 測試c程式 #include <stdio.h> int main(void) { int i,j,k; int v1[4][3]; int v2[3][4]; int v3[4][4] = {{}, {}, {}, {}}; //4行3列矩陣與3行4列矩陣的乘積是4行4列的矩陣,將其所有元素初始化為0 for(i = 0; i < 4; i++) { for(j = 0; j < 3; j++) { printf("v1[%d][%d]:", i, j); scanf("%d", &v1[i][j]); } } for(i = 0; i < 3; i++) { for(j = 0; j < 4; j++) { printf("v2[%d][%d]:", i, j); scanf("%d", &v2[i][j]); } } for(k = 0; k < 4; k++) // 按照矩陣運算規則進行賦值 { for(i = 0; i < 4; i++) { for(j = 0; j < 3; j++) { v3[k][i] += v1[k][j] * v2[j][i]; } } } puts("-------------------------------------------------"); for(i = 0; i < 4; i++) { for(j = 0; j < 4; j++) { printf("v3[%d][%d] = %d\t", i, j, v3[i][j]); } putchar('\n'); } return 0; } [root@PC1 test]# gcc test.c -o kkk [root@PC1 test]# ls kkk test.c [root@PC1 test]# ./kkk v1[0][0]:2 v1[0][1]:1 v1[0][2]:3 v1[1][0]:4 v1[1][1]:2 v1[1][2]:6 v1[2][0]:3 v1[2][1]:1 v1[2][2]:2 v1[3][0]:2 v1[3][1]:5 v1[3][2]:4 v2[0][0]:1 v2[0][1]:2 v2[0][2]:4 v2[0][3]:2 v2[1][0]:2 v2[1][1]:3 v2[1][2]:4 v2[1][3]:5 v2[2][0]:2 v2[2][1]:2 v2[2][2]:2 v2[2][3]:3 ------------------------------------------------- v3[0][0] = 10 v3[0][1] = 13 v3[0][2] = 18 v3[0][3] = 18 v3[1][0] = 20 v3[1][1] = 26 v3[1][2] = 36 v3[1][3] = 36 v3[2][0] = 9 v3[2][1] = 13 v3[2][2] = 20 v3[2][3] = 17 v3[3][0] = 20 v3[3][1] = 27 v3[3][2] = 36 v3[3][3] = 41
。