跳到主要内容

C 编程:使用多维数组相加两个矩阵

要理解这个例子,你应该具备以下 C 语言编程 相关知识:

程序:实现两个矩阵相加

#include <stdio.h>
int main() {
int r, c, a[100][100], b[100][100], sum[100][100], i, j;
printf("输入行数(1 到 100 之间):");
scanf("%d", &r);
printf("输入列数(1 到 100 之间):");
scanf("%d", &c);

printf("\n输入第一个矩阵的元素:\n");
for (i = 0; i < r; ++i)
for (j = 0; j < c; ++j) {
printf("输入元素 a%d%d:", i + 1, j + 1);
scanf("%d", &a[i][j]);
}

printf("输入第二个矩阵的元素:\n");
for (i = 0; i < r; ++i)
for (j = 0; j < c; ++j) {
printf("输入元素 b%d%d:", i + 1, j + 1);
scanf("%d", &b[i][j]);
}

// 两个矩阵相加
for (i = 0; i < r; ++i)
for (j = 0; j < c; ++j) {
sum[i][j] = a[i][j] + b[i][j];
}

// 打印结果
printf("\n两个矩阵的和:\n");
for (i = 0; i < r; ++i)
for (j = 0; j < c; ++j) {
printf("%d ", sum[i][j]);
if (j == c - 1) {
printf("\n\n");
}
}

return 0;
}

输出

输入行数(1100 之间):2
输入列数(1100 之间):3

输入第一个矩阵的元素:
输入元素 a11:2
输入元素 a12:3
输入元素 a13:4
输入元素 a21:5
输入元素 a22:2
输入元素 a23:3
输入第二个矩阵的元素:
输入元素 b11:-4
输入元素 b12:5
输入元素 b13:3
输入元素 b21:5
输入元素 b22:6
输入元素 b23:3

两个矩阵的和:
-2 8 7

10 8 6

在这个程序中,用户被要求输入行数 r 和列数 c。然后,用户需要输入两个矩阵的元素(阶数为 r**x**c)。

我们接着将两个矩阵对应的元素相加,并将结果保存在另一个矩阵(二维数组)中。最后,结果在屏幕上打印出来。