You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
|
|
#include <bits/stdc++.h>
|
|
|
|
|
|
|
|
|
|
using namespace std;
|
|
|
|
|
typedef long long LL;
|
|
|
|
|
const int N = 110;
|
|
|
|
|
int n = 3;
|
|
|
|
|
|
|
|
|
|
//两个n*n的矩阵
|
|
|
|
|
/*
|
|
|
|
|
z[][N]:结果数组
|
|
|
|
|
C++中,如果传递的函数参数是数组,则理解为按地址传递,
|
|
|
|
|
在函数内的修改动作将直接修改数组内容,调用者可以直接
|
|
|
|
|
使用修改后的内容。
|
|
|
|
|
不论是几维的多维数组,只有第一维的长度不用指定,其它都要指定。
|
|
|
|
|
黄海理解一下:
|
|
|
|
|
因为多维数组在内存中是连续存的,C++需要知道你给的这个指针,到哪个位置开始换行。
|
|
|
|
|
*/
|
|
|
|
|
void add(LL z[][N], LL x[][N], LL y[][N]) {
|
|
|
|
|
for (int i = 1; i <= n; i++)
|
|
|
|
|
for (int j = 1; j <= n; j++)
|
|
|
|
|
z[i][j] = x[i][j] + y[i][j];
|
|
|
|
|
}
|
|
|
|
|
void dec(LL z[][N], LL x[][N], LL y[][N]) {
|
|
|
|
|
for (int i = 1; i <= n; i++)
|
|
|
|
|
for (int j = 1; j <= n; j++)
|
|
|
|
|
z[i][j] = x[i][j] - y[i][j];
|
|
|
|
|
}
|
|
|
|
|
/*
|
|
|
|
|
测试用例
|
|
|
|
|
1 2 3
|
|
|
|
|
1 2 3
|
|
|
|
|
1 2 3
|
|
|
|
|
|
|
|
|
|
4 5 6
|
|
|
|
|
4 5 6
|
|
|
|
|
4 5 6
|
|
|
|
|
|
|
|
|
|
输出结果:
|
|
|
|
|
5 7 9
|
|
|
|
|
5 7 9
|
|
|
|
|
5 7 9
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
LL x[N][N], y[N][N], z[N][N];
|
|
|
|
|
int main() {
|
|
|
|
|
for (int i = 1; i <= n; i++)
|
|
|
|
|
for (int j = 1; j <= n; j++)
|
|
|
|
|
cin >> x[i][j];
|
|
|
|
|
|
|
|
|
|
for (int i = 1; i <= n; i++)
|
|
|
|
|
for (int j = 1; j <= n; j++)
|
|
|
|
|
cin >> y[i][j];
|
|
|
|
|
|
|
|
|
|
add(z, x, y);
|
|
|
|
|
for (int i = 1; i <= n; i++) {
|
|
|
|
|
for (int j = 1; j <= n; j++)
|
|
|
|
|
cout << z[i][j] << " ";
|
|
|
|
|
cout << endl;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
dec(z, x, y);
|
|
|
|
|
for (int i = 1; i <= n; i++) {
|
|
|
|
|
for (int j = 1; j <= n; j++)
|
|
|
|
|
cout << z[i][j] << " ";
|
|
|
|
|
cout << endl;
|
|
|
|
|
}
|
|
|
|
|
return 0;
|
|
|
|
|
}
|