用C语言求两个矩阵相加的程序
时间: 2024-09-11 15:02:47 浏览: 45
在C语言中,编写一个程序来实现两个矩阵相加的基本步骤如下:
1. 定义矩阵的大小,即行数和列数。
2. 创建两个矩阵并初始化它们的元素。
3. 创建一个用于存放结果的矩阵。
4. 遍历两个矩阵的所有元素,将对应位置上的元素相加并存入结果矩阵中。
5. 输出结果矩阵。
以下是一个简单的示例代码:
```c
#include <stdio.h>
// 函数声明
void addMatrices(int rows, int cols, int mat1[][cols], int mat2[][cols], int result[][cols]);
int main() {
int rows, cols;
printf("请输入矩阵的行数和列数:");
scanf("%d %d", &rows, &cols);
// 初始化两个矩阵
int matrix1[rows][cols], matrix2[rows][cols], result[rows][cols];
printf("请输入第一个矩阵的元素:\n");
for (int i = 0; i < rows; ++i) {
for (int j = 0; j < cols; ++j) {
scanf("%d", &matrix1[i][j]);
}
}
printf("请输入第二个矩阵的元素:\n");
for (int i = 0; i < rows; ++i) {
for (int j = 0; j < cols; ++j) {
scanf("%d", &matrix2[i][j]);
}
}
// 计算矩阵相加
addMatrices(rows, cols, matrix1, matrix2, result);
// 输出结果矩阵
printf("矩阵相加的结果是:\n");
for (int i = 0; i < rows; ++i) {
for (int j = 0; j < cols; ++j) {
printf("%d ", result[i][j]);
}
printf("\n");
}
return 0;
}
// 矩阵相加的函数实现
void addMatrices(int rows, int cols, int mat1[][cols], int mat2[][cols], int result[][cols]) {
for (int i = 0; i < rows; ++i) {
for (int j = 0; j < cols; ++j) {
result[i][j] = mat1[i][j] + mat2[i][j];
}
}
}
```
在这个程序中,我们首先通过用户输入确定矩阵的大小,然后分别输入两个矩阵的元素。之后,我们定义了一个函数 `addMatrices` 来执行矩阵相加的操作,并将结果存储在 `result` 矩阵中。最后,我们输出结果矩阵。
阅读全文