矩阵相加

矩阵相加试题算法训练矩阵加法提交此题评测记录资源限制时间限制:1.0s内存限制:512.0MB问题描述:给定两个N×M的矩阵,计算其和。其中:N和M大于等于1且小于等于100,矩阵元素的绝对值不超过1000。输入格式:输入数据的第一行包含两个整数N、M,表示需要相加的两个矩

大家好,欢迎来到IT知识分享网。矩阵相加"

试题 算法训练 矩阵加法

提交此题    评测记录  
资源限制
时间限制:1.0s   内存限制:512.0MB
问题描述:
  给定两个N×M的矩阵,计算其和。其中:

  N和M大于等于1且小于等于100,矩阵元素的绝对值不超过1000。
输入格式:
  输入数据的第一行包含两个整数N、M,表示需要相加的两个矩阵的行数和列数。接下来2*N行每行包含M个数,其中前N行表示第一个矩阵,后N行表示第二个矩阵。
输出格式:
  你的程序需要输出一个N*M的矩阵,表示两个矩阵相加的结果。注意,输出中每行的最后不应有多余的空格,否则你的程序有可能被系统认为是Presentation  Error
样例输入:
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

(0)

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信