二维数组的定义是什么?
二维数组定义的一般形式是: 类型说明符 数组名常量表达式1其中常量表达式1表示第一维下标的长度,常量表达式2 表示第二维下标的长度。
二维数组基本运算算法:
(1)转置矩阵:
1 // 其中A, B是m*n矩阵2 void tramat(matrix A, matrix B) { //T(n) = O(m * n)3 int i, j;4 for (i = 0; i < m; i++)5 for (j = 0; j < n; j++)6 B[j][i] = A[i][j];7 }。
(2)矩阵相加:
1 // 其中A,B,C是m*n矩阵2 void addmat(matrix C, matrix A, matrix B) {3 int i, j;4 for (i = 0; i < m; i++)5 for (j = 0; j < n; j++)6 C[i][j] = A[i][j] + B[i][j];7 }。
(3)矩阵相乘:
1 // 其中A是m*r矩阵,B是r*n矩阵,C为m*n矩阵 2 void mutmat(matrix C, matrix A, matrix B) { 3 int i, j, k; 4 for (i = 0; i < m; i++) 5 for (j = 0; j < n; j++) { 6 C[i][j] = 0; 7 for (k = 0; k < r; k++) 8 C[i][j] += A[i][k] * B[k][j]; 9 }10 }。