矩阵的乘法-编程心得

本文详细介绍了如何使用C语言实现矩阵乘法程序,并解释了矩阵乘法的基本原理及编程思想。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 今天做了一个关于矩阵乘法的程序,虽然说编程的思想比较好理解,但是也确实遇到了一些麻烦。
#include <stdio.h>

int main()
{
	int a[2][3],b[3][4];//定义两个矩阵,一会儿我们将它们相乘.
 	int c[2][4]={0};//这里保存的结果矩阵,注意,要初始化为0.也可以这样写int c[2][4]={{0,0,0,0},{0,0,0,0}};
	int i,j,k;
	printf("Please input a 2*3 matrix:\n");
	for(i=0;i<2;i++)
	{
		for(j=0;j<3;j++)
		{
			scanf("%d", *(a+i)+j);//输入第一个矩阵。这里注意,一个星号的表示地址
		}
	}
	
	printf("Please input a 3*4 matrix:\n");
	for(i=0;i<3;i++)
	{
		for(j=0;j<4;j++)
		{
			scanf("%d", *(b+i)+j));//输入第一个矩阵。
		}
	}


	printf("Starting to calculate:\n");

	for(i=0;i<2;i++)
	{
		for(k=0;k<3;k++)
		{
			for(j=0;j<4;j++)
			{
				c[i][j]=c[i][j]+a[i][k]*b[k][j];//矩阵乘法的计算。注意,第一个矩阵的列数要和第二个矩阵的行数一致
			}
		}
	}

	printf("The result is:\n");
	for(i=0;i<2;i++)
	{
		for(j=0;j<4;j++)
		{
			 printf("%d ", *(*(c+i)+j);//两个星号的表示二维数组的内容
			// printf("%d ",c[i][j]);//我们也可以用这种形式进行二维数组的输出
		}
		printf("\n");
	}
	printf("\n");
	
	return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值