C语言编写程序:求已知两个矩阵x与y之和,结果存到矩阵x中。大学c语言编程题。
5条回答 默认 最新
- 技术专家团-小桥流水 2022-09-13 09:40关注
矩阵相加需要两个矩阵的行数和列数相同,然后对应位置的数字相加即可。
代码如下:
#define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <stdlib.h> int main() { int** x, ** y; //动态分配内存 int m, n; //矩阵的行数和列数 int i, j; //临时变量 printf("请输入矩阵的行数和列数:"); scanf_s("%d %d", &m, &n); //申请x内存 x = (int**)malloc(sizeof(int*) * m); for (i = 0; i < m; i++) x[i] = (int*)malloc(sizeof(int) * n); //申请y内存 y = (int**)malloc(sizeof(int*) * m); for (i = 0; i < m; i++) y[i] = (int*)malloc(sizeof(int) * n); printf("请输入%d*%d的矩阵x:\n",m,n); for (i = 0; i < m; i++) { for (j = 0; j < n; j++) scanf_s("%d", &x[i][j]); } printf("请输入%d*%d的矩阵y:\n", m, n); for (i = 0; i < m; i++) { for (j = 0; j < n; j++) scanf_s("%d", &y[i][j]); } printf("x+y=\n"); //计算矩阵的和并存入x for (i = 0; i < m; i++) { for (j = 0; j < n; j++) { x[i][j] += y[i][j]; printf("%d ", x[i][j]); //输出结果 } printf("\n"); } //释放内存 for (i = 0; i < m; i++) { free(x[i]); x[i] = 0; free(y[i]); y[i] = 0; } free(x); free(y); x = 0; y = 0; return 0; }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报 编辑记录
悬赏问题
- ¥15 csmar数据进行spss描述性统计分析
- ¥15 各位请问平行检验趋势图这样要怎么调整?说标准差差异太大了
- ¥15 delphi webbrowser组件网页下拉菜单自动选择问题
- ¥15 wpf界面一直接收PLC给过来的信号,导致UI界面操作起来会卡顿
- ¥15 init i2c:2 freq:100000[MAIXPY]: find ov2640[MAIXPY]: find ov sensor是main文件哪里有问题吗
- ¥15 运动想象脑电信号数据集.vhdr
- ¥15 三因素重复测量数据R语句编写,不存在交互作用
- ¥15 微信会员卡等级和折扣规则
- ¥15 微信公众平台自制会员卡可以通过收款码收款码收款进行自动积分吗
- ¥15 随身WiFi网络灯亮但是没有网络,如何解决?