已知两个矩阵,求其和矩阵,C语言
时间: 2024-11-16 10:13:57 浏览: 0
在C语言中,如果你有两个矩阵想要求它们的和,你可以创建一个新的矩阵,然后遍历两个给定矩阵,对应位置相加并将结果存入新矩阵。以下是一个简单的示例,假设我们有二维整型数组`A`和`B`,以及它们的维度(行数`m`和列数`n`):
```c
#include <stdio.h>
// 定义矩阵结构体
typedef struct {
int rows;
int cols;
int data[m][n]; // 矩阵大小需要提前确定
} Matrix;
// 求两个矩阵的和
Matrix addMatrices(Matrix A, Matrix B) {
Matrix result = {A.rows, A.cols}; // 新矩阵的尺寸和输入矩阵一样
for (int i = 0; i < result.rows; ++i) {
for (int j = 0; j < result.cols; ++j) {
result.data[i][j] = A.data[i][j] + B.data[i][j];
}
}
return result;
}
// 测试函数
void printMatrix(Matrix matrix) {
for (int i = 0; i < matrix.rows; ++i) {
for (int j = 0; j < matrix.cols; ++j) {
printf("%d ", matrix.data[i][j]);
}
printf("\n");
}
}
int main() {
// 初始化两个矩阵
Matrix A = {3, 4, {1, 2, 3, 4, 5, 6}};
Matrix B = {3, 4, {7, 8, 9, 10, 11, 12}};
// 求和
Matrix sum = addMatrices(A, B);
// 打印结果矩阵
printf("Sum of matrices:\n");
printMatrix(sum);
return 0;
}
```
阅读全文