用C语言将输入的3*3矩阵进行乘法
时间: 2024-10-08 22:09:22 浏览: 45
在C语言中,计算3x3矩阵的乘法涉及到两个矩阵相乘的操作,通常被称为矩阵乘法(Matrix Multiplication)。对于两个3x3矩阵A和B,结果矩阵C的每个元素C[i][j]是按照以下规则计算的:
C[i][j] = Σ(A[i][k] * B[k][j])
这里Σ表示求和,对所有k从0到2(因为矩阵大小为3x3)。
下面是一个简单的示例程序,用于计算两个3x3矩阵的乘法:
```c
#include <stdio.h>
#define ROWS 3
#define COLS 3
void multiply_matrices(int A[ROWS][COLS], int B[ROWS][COLS], int C[ROWS][COLS]) {
for (int i = 0; i < ROWS; i++) { // 行循环
for (int j = 0; j < COLS; j++) { // 列循环
int sum = 0;
for (int k = 0; k < ROWS; k++) { // 拉链式遍历
sum += A[i][k] * B[k][j];
}
C[i][j] = sum;
}
}
}
// 主函数
int main() {
int A[ROWS][COLS] = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};
int B[ROWS][COLS] = {{9, 8, 7}, {6, 5, 4}, {3, 2, 1}};
int C[ROWS][COLS];
multiply_matrices(A, B, C);
printf("Matrix multiplication result:\n");
for (int i = 0; i < ROWS; i++) {
for (int j = 0; j < COLS; j++) {
printf("%d ", C[i][j]);
}
printf("\n");
}
return 0;
}
```
这个程序首先定义了两个3x3的矩阵A和B,然后通过`multiply_matrices`函数计算它们的乘积,并将结果存储在C矩阵中。最后打印出C矩阵的内容。
阅读全文