c 语言编写矩阵乘法,用C++编写矩阵乘法运算的程序

这篇博客介绍了两种在C/C++中实现矩阵乘法的方法:一种是使用指针和动态分配内存的二维数组,另一种是直接声明固定大小的二维数组。动态分配内存的方法在处理大矩阵时可能出现野指针问题,而固定大小数组则相对稳定。文中还展示了两种方法的运行效果。

方法一:使用指针二维数组

#include

using namespace std;

int main() {

int m;

int n;

int r;

cout << "运算矩阵A和矩阵B相乘" << endl << endl;

cout << "请输入矩阵A的行数和列数:" << endl << endl;

cout << "矩阵A的行数:";

cin >> m;

cout << "矩阵A的列数:";

cin >> n;

cout << "矩阵B的列数:";

cin >> r;

cout << endl;

//取m的地址赋值给指针x

int *x = &m;

int *y = &n;

int *z = &r;

//把变量m赋值给地址x对应的值,在这里,*x表示在x地址存放的变量值,直接写x表示地址。但在定义的时候不一样,int *x之中,*x就表示的是地址了。

*x = m;

*y = n;

int **a = new int*[*y];

for (int i = 0;i < *x;i++) {

*(a + i) = new int[*x];

}

int **b = new int*[*z];

for (int i = 0;i < *y;i++) {

*(b + i) = new int[*y];

}

int **c = new int*[*z];

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值