我们今天讲矩阵加法:
输入两个 n 行 m 列的矩阵 A和 B,输出它们的和 A+B,矩阵加法的规则是两个矩阵中对应位置的值进行加和,具体参照样例。
输入:
3 3
1 2 3
1 2 3
1 2 3
1 2 3
4 5 6
7 8 9
输出:
2 4 6
5 7 9
8 10 12
什么意思呢?就是A矩阵和B矩阵的每一个数相加,得出的答案。
废话不多说,开干:
#include<iostream>
using namespace std;
int a[105][105],b[105][105],c[105][105];
int n,m;
int main(){
cin>>n>>m;
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
cin>>a[i][j];
}
}
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
cin>>b[i][j];
}
}
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
c[i][j]=a[i][j]+b[i][j];
cout<<c[i][j]<<" ";
}
cout<<endl;
}
return 0;
}
或:
#include<iostream>
using namespace std;
int a[105][105],b[105][105];
int n,m;
int main(){
cin>>n>>m;
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
cin>>a[i][j];
}
}
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
cin>>b[i][j];
}
}
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
cout<<a[i][j]+b[i][j]<<" ";
}
cout<<endl;
}
return 0;
}
我个人认为,方法二简单,少一个步骤,就是输出a[i][j]与b[i][j]相加的结果,可以用洛谷测,都通得过。