C语言中矩阵乘法的实现

该博客介绍了如何使用C语言进行矩阵乘法的简单实现,包括接收矩阵的行数和列数,读取矩阵数据,以及通过三重循环计算矩阵乘积。程序直接输出结果到新的矩阵,适用于整数型数据处理。

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

基于C语言的矩阵乘简单实现:
1.通过输入确定原矩阵的行数、列数。
2.设定for循环读入数据填充矩阵M、N。
3.通过一个三重循环将M、N内元素相乘(在此程序直接在第三层循环结束后输出所得数据并保存到K矩阵,省去了再通过二重循环输出K矩阵的过程)。

ps:此程序的输入输出都用了int整数型,如需处理其他类型,请自行更改,且输出结果采用%-3d格式,即左对齐、每个字符占3个字符长度。

  其主要的部分在于一个三重循环:
 for(h=0;h<i;h++)
 {
  for(b=0;b<n;b++)
  {
   for(a=0;a<j;a++)
    {
     sum=sum + M[h][a]*N[a][b];
      if(a==j-1)
      {
       printf("%-3d",sum);
      K[h][b]=sum;
       }
      }
  a=1;
  sum=0;                  
 }               
 printf("\n");
 }
 
 其主要核心思想在于:M[i,j] * N[m,n]矩阵的结果为K[i,n];即最后的结果应为i * n的一个
 矩阵,那么所设定的第一层循环就是K矩阵的行(循环次数最少),第二层循环为M矩阵的列和N矩阵
 的行,第三层矩阵循环N矩阵的列(循环次数最多)。
#include <stdio.h>

int main()
{
   
   
	int i,j,m,n,a,b,h,sum;
	sum=0;
	printf("请输入待乘矩阵分别对应的行数、列数:\n");
	scanf("%d %d %d %d",&i,&j
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值