题目链接
https://www.luogu.com.cn/problem/B2104
解题思路
输入两个矩阵,对矩阵的每一行和每一列进行遍历并进行加法操作,最后将结果矩阵通过循环遍历输出即可。
解题代码
C代码
#include<stdio.h>
int main(){
int n,m;
scanf("%d %d",&n,&m);
int a[n][m],b[n][m];//定义两个二维数组为矩阵
for(int i = 0; i < n; i++){
for(int j = 0; j < m; j++){
scanf("%d",&a[i][j]);
}
}
for(int i = 0; i < n; i++){
for(int j = 0; j < m; j++){
scanf("%d",&b[i][j]);
}
}
for(int i = 0; i < n; i++){
for(int j = 0; j < m; j++){
if(j != m-1){
printf("%d ",a[i][j]+b[i][j]);
}
else//每行结尾换行
{
printf("%d\n",a[i][j]+b[i][j]);
}
}
}
return 0;
}
C++代码
#include<iostream>
using namespace std;
const int N = 1010;
int a[N][N],n,m,t;
int main()
{
cin>>n>>m;
for(int i=0;i<n;i++)
for(int j=0;j<m;j++) cin>>a[i][j];
//将第一个二维数组和第二个二维数组对应位相加
for(int i=0;i<n;i++){
for(int j=0;j<m;j++) cin>>t,cout<<a[i][j] + t<<' ';
cout<<endl;
}
return 0;
}
Java代码
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
//输入数据
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();
int m = scanner.nextInt();
int[][] a = new int[n][m];
for (int i = 0; i < n; i++){
for (int j = 0; j < m; j++){
a[i][j] = scanner.nextInt();
}
}
int[][] b = new int[n][m];
for (int i = 0; i < n; i++){
for (int j = 0; j < m; j++){
b[i][j] = scanner.nextInt();
}
}
for (int i = 0; i < n; i++){
for (int j = 0; j < m; j++){
System.out.print(a[i][j] + b[i][j] + " ");
}
System.out.println();
}
}
}