1.矩阵加法
题解:
题目简单,定义3个二维数组,一个是第一个矩阵。另一个是第二个矩阵。而最后一个则是实现矩阵加法的数组。
#include<cstdio>
int a[110][110],b[110][110],c[110][110],n,m;
int main(){
scanf("%d %d",&n,&m);
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
scanf("%d",&a[i][j]);
}
}
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
scanf("%d",&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];
}
}
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
printf("%d ",c[i][j]);
}
printf("\n");
}
}
2.计算矩阵边缘之和
![]()
题解:
本题唯一难点:如何确定矩阵边缘的元素并且相加。
可以发现要确定边缘的元素只要满足其中一个条件就可以了!
#include<cstdio>
int a[110][110],n,m,sum;
int main(){
scanf("%d %d",&n,&m);
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
scanf("%d",&a[i][j]);
}
}
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
if(i==1||i==n||j==1||j==m){
sum+=a[i][j];
}
}
}
printf("%d",sum);
}