ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

矩阵相加

2021-03-05 10:02:27  阅读:123  来源: 互联网

标签:输出 int 相加 矩阵 ++ 100


试题 算法训练 矩阵加法

提交此题   评测记录   资源限制 时间限制: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;
}

标签:输出,int,相加,矩阵,++,100
来源: https://www.cnblogs.com/Jerry-Long/p/14484531.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有