题目
从标准输入读入两个 2×3 的整数矩阵,计算两个矩阵相加的和矩阵并按格式输出。
输入格式:前 2 行输入第一个 2×3 矩阵;后 2 行输入第二个 2×3 矩阵。
输出格式:输出 2 行,每行包含 3 个整数,表示和矩阵,每行内的元素用空格分隔。
数据范围与约定:矩阵元素均为整数。
思路与算法
1. 矩阵加法运算法则
同型矩阵对应位置元素直接相加:c[i][j] = a[i][j] + b[i][j]。
2. 二维循环读写
外层循环控制行(0 到 1),内层循环控制列(0 到 2),完成计算与按行格式化输出。
完整程序
#include <stdio.h>
int main(void)
{
int a[2][3], b[2][3], c[2][3];
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 3; j++) {
scanf("%d", &a[i][j]);
}
}
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 3; j++) {
scanf("%d", &b[i][j]);
}
}
// 矩阵加法:同型矩阵对应位置元素相加
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 3; j++) {
c[i][j] = a[i][j] + b[i][j];
}
}
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 3; j++) {
printf("%d%c", c[i][j], j + 1 < 3 ? ' ' : '\n');
}
}
return 0;
}运行示例
输入:
1 2 3
4 5 6
7 8 9
1 1 1
1 1 1输出:
8 10 12
5 6 7