大家好,欢迎来到IT知识分享网。
试题 算法训练 矩阵加法
N和M大于等于1且小于等于100,矩阵元素的绝对值不超过1000。
2 2 1 2 3 4 5 6 7 8
样例输出:
6 8 10 12
解题思路:
1、将矩阵利用数组进行存储,
2.用一个新的数组接收相加后的数据,
3.输出数据的时候应该注意要求,是不能有多余的空格,
代码实现:
#include<iostream>
using namespace std;
void print(int a[][100], int n, int m) { //输出数组
int i, j;
for (i = 0; i < n; i++) {
for (j = 0; j < m-1; j++) { //每行的元素的最后一个先不输出,因为这样输出会有空格,所以单独处理
cout << a[i][j] << ” “;
}
cout << a[i][j] << “\n”;
}
}
int main() {
int a[100][100] = { 0 }, b[100][100] = { 0 }, c[100][100] = { 0 };//分别存储,第一个矩阵,第二个矩阵,两矩阵相加后的矩阵
int n, m;//分别表示矩阵的行数和列数
cin >> n >> m;
for (int i = 0; i < n; i++) { //将第一个矩阵的数据存入到数组a中,
for (int j = 0; j < m; j++) {
cin >> a[i][j];
}
}
for (int i = 0; i < n; i++) { //将第二个矩阵的数据存入到数组a中,
for (int j = 0; j < m; j++) {
cin >> b[i][j];
}
}
for (int i = 0; i < n; i++) { //进行矩阵加法操作,
for (int j = 0; j < m; j++) {
c[i][j] = a[i][j] + b[i][j];
}
}
print(c, n, m);
return 0;
}
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/32354.html