C语言实现矩阵的乘法

article/2025/9/23 4:21:20

矩阵乘法作为算法题我觉得对我来说是比较难想的,而且作为没学线性代数的我来说,这简直就是场灾难,在我研究了书上及网上的有关资料后,我觉得自己应该差不多可以理解矩阵乘法的要领了,希望可以帮助大家:其实矩阵的运算包括许多种,有加减乘除法等等。矩阵加法就是相同位置的数字加一下。在这里插入图片描述
矩阵减法也类似。在这里插入图片描述矩阵乘以一个常数,就是所有位置都乘以这个数。但是,等到矩阵乘以矩阵的时候,一切就不一样了。在这里插入图片描述首先让我们了解下矩阵乘法:矩阵乘法(英语:matrix multiplication)是一种根据两个矩阵得到第三个矩阵的二元运算,第三个矩阵即前两者的乘积,称为矩阵积*

它只有在第一个矩阵的列数(column)和第二个矩阵的行数(row)相同时才有意义*

这个结果是怎么算出来的呢,来看下面这个题:
在这里插入图片描述

下面听我慢慢的分析一下:咱们先将第一个矩阵设为A,第二个为B,最后乘积得到的矩阵为C。

A中的第一行各个元素分别与B中第一列各个元素相乘得到的和即为C中的第一个元素(2×1+1×1=3)
A中的第一行各个元素分别与B中第二列各个元素相乘得到的和即为C中的第二个元素(2×2+1×0=4)
A中第一行已经计算完毕,现在应该为第二行了,C中也变为了第二行。
A中的第二行各个元素分别与B中第一列各个元素相乘得到的和即为C中的第三个元素(4×1+3×1=7)A中的第二行各个元素分别与B中第二列各个元素相乘得到的和即为C中的第四个元素(4×2+3×0=8)

嗯~这就是矩阵乘法的概念了,遇到复杂的矩阵乘法也是采用此方法。但是,重要的问题来了,如何用C语言实现呢,其实我一开始就是了解了这个思路,让我写也是不会写的,要有多个循环嵌套。但是呢,只要努力想,成功总会来的。冲冲冲!

#include<stdio.h>i
nt main(void)
{int a[10][10],b[10][10]; int c[10][10]={0};//一定要记得初始化,不然系统会给你分配垃圾数据的哦!int e,f; //定义矩阵a的行列数  int g,h;//定义矩阵b的行列数               int i,j,k;scanf("%d %d",&e,&f);   for(i=0;i<e;i++)  for(j=0;j<f;j++)   scanf("%d",&a[i][j]);//输入a中各元素       scanf("%d %d",&g,&h);   for(i=0;i<g;i++)  for(j=0;j<h;j++)   scanf("%d",&b[i][j]);//输入b中各元素     if(f!=g) printf("不可计算");//判断是否满足矩阵相乘的条件(a的列数与b的行数相等)   else { for(i=0;i<e;i++)//遍历c矩阵各行,其行数与a的行数相等    	                for(j=0;j<h;j++)//遍历c矩阵i行各列    for(k=0;k<f;k++)//用k循环累加和计算c[i][j]      c[i][j]+=a[i][k]*b[k][j];//遍历a矩阵各行与b矩阵各列  }      for(i=0;i<e;i++){  for(j=0;j<h;j++)   printf("%d\n",c[i][j]);  } } 

这就是矩阵乘法的代码了,需要我们认真思考才可以想到的哦,fighting!!!


http://chatgpt.dhexx.cn/article/RBi9Nbeo.shtml

相关文章

C语言矩阵运算

矩阵的乘法&#xff1a; 矩阵的列数&#xff08;column&#xff09;和第二个矩阵的行数&#xff08;row&#xff09;相同时 #include<stdio.h>int main() { int a[2][4], b[4][3], c[2][3];int i, j, k, sum; printf("输入一个24的矩阵&#xff1a;\n"); fo…

c语言矩阵的乘法

矩阵的乘法&#xff1a; 两个矩阵只有在第一个矩阵的列数&#xff08;column&#xff09;和第二个矩阵的行数&#xff08;row&#xff09;相同时才有意义。一般单指矩阵乘积时&#xff0c;指的便是一般矩阵乘积。一个mn的矩阵就是mn个数排成m行n列的一个数阵。 运算规则&#x…

C语言刷题小结---矩阵篇

电影黑客帝国有很多这样的场景 用矩阵表示我们看到的一切&#xff01; 而在编程中矩阵是用数组来表示的 目前小作者还只是学习编程的初学者&#xff0c;很多知识内容都还没有学习。但相信每一个学习编程的小伙伴在做C语言方面的练习时都会遇到有关矩阵相关的题目&#xff0c;…

《C语言》矩阵问题

一.矩阵乘法 1.定理&#xff1a; 两个矩阵的乘法仅当第一个矩阵A的列数和另一个矩阵B的行数相等时才能定义。如A是mn矩阵和B是np矩阵&#xff0c;它们的乘积C是一个mp矩阵。 例如&#xff1a; 2.思路 1. i&#xff0c;j分别代表行和列&#xff0c;所以应该定义一个二维矩阵&…

C语言矩阵乘法

本篇内容 1&#xff09;首先介绍了矩阵乘法的基本原理&#xff1b; 2&#xff09;然后介绍了相对初阶的C语言乘法代码设计&#xff1b; 3&#xff09;最后根据C语言动态内存规划&#xff0c;提出了更加便捷、优化的代码设计&#xff0c;希望能给大家带来帮助。 更新&#xff1a…

c语言之矩阵

矩阵作为线性代数核心内容之一也是刷题人时常会遇到的一种类型。本篇博客简单介绍一下矩阵转置、上三角矩阵以及杨氏矩阵。 1.转置矩阵&#xff1a;输入m行n列的矩阵以n行m列的方式打印出来。只要将数组的行列进行交换即可&#xff0c;并不难想也不难写.&#xff08;相应练习&a…

vue-quill-editor 使用-图片上传

vue 项目开发中&#xff0c;文本编辑器的选择很多&#xff0c;一些熟悉的文本编辑器都可以使用&#xff0c;如UEditor、wangEditor&#xff0c;这里介绍基于 vue 的一个文本编辑器插件 vue-quill-editor 此插件基于 quill&#xff0c;所以使用 cdn 节点方式引用时&#xff0c;…

Error: Cannot find module ‘./XXX.jpg‘ 问题解决 Vue动态显示图片

刚开始学习Vue 在循环输出图片时&#xff0c;浏览器报错Error: Cannot find module ‘./tqwl.jpg’ 这张图片是放在本地文件夹内的 这是图片的展示代码 <el-table-column label"展示" width"180"><template slot-scope"scope"><…

解决js中获取不到图片路径的情况

在写一个todoList作品时&#xff0c;需要点击事件更改图片路径时&#xff0c;遇到了获取不到图片路径的情况 在html中用src“”来获取的图片&#xff0c;凭主观臆想觉得在js中判断它的路径时&#xff0c;没有作用&#xff0c;控制台中显示的不是我们熟悉的路径格式 查阅得知&a…

vue-quill-editor删除服务器多余图片

这几天在做富文本编辑业务&#xff0c;在删除服务器资源方面遇到了问题&#xff0c;网上搜索了很久都没找到办法&#xff0c;现在把自己解决的过程记录如下&#xff1a;思路&#xff1a; 点击工具栏的图标&#xff0c;选取图片&#xff08;不是base64格式&#xff09;上传到服…

将JS代码隐藏在图片中的方法

之前写过利用图片重写的方法清除图片中恶意代码的文章&#xff0c;java清除恶意代码 &#xff0c;但这些图片中的恶意代码是怎么植入进去的呢&#xff0c;有简便方法&#xff0c;也有复杂方法。先来看如下这张图片&#xff0c;是Google的LOGO&#xff0c;是一张完全正常的png图…

VUE-QUILL-EDITOR安装与调节图片大小记录

一、quill-editor安装 安装quill-editor npm install vue-quill-editor --save安装调节图片大小插件(不是必须的&#xff0c;看需求) npm install quill-image-resize-module -S二、 引用&#xff08;两种方式&#xff09; 全局引用 在main.js中填入以下代码 import Vue f…

将js/css脚本放到png图片中的实践。

起因 高级浏览器支持data协议,如: 参考:http://en.wikipedia.org/wiki/Data:_URL <img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQAQMAAAAlPW0iAAAABlBMVEUAAAD///+l2Z/dAAAAM0lEQVR4nGP4/5/h/1+G/58ZDrAz3D/McH8yw83NDDeNGe4Ug9C9zwz3gVLMDA/A6…

[JS插件] PhotoSwipe 图片浏览插件使用方法

一、介绍 PhotoSwipe 是专为移动触摸设备设计的相册/画廊.兼容所有iPhone、iPad、黑莓6,以及桌面浏览器.底层实现基于HTML/CSS/JavaScript,是一款免费开源的相册产品。 官方网站&#xff1a;http://photoswipe.com/ 源码下载&#xff1a;https://github.com/dimsemenov/photo…

原生js 图片查看器

将以前用angular 写的 自定义指令 封装成 插件&#xff0c;无需引用jquery、angular。 下载下来即可查看效果。 github网址: GitHub - wzhGitH/imgView: js 图片查看器,H5图片预览(imgView) 百度云下载链接: 百度网盘 请输入提取码 密码: gidq 可实现放大、缩小、拖拽、旋转…

vue-quill-editor拖拽或粘贴的图片上传到服务器回显插入图片后删除生成的Base64图片

问题描述&#xff1a;拖拽或粘贴图片上传到服务器后返回url插入富文本编辑器后&#xff0c;quill默认生成的base64图片链接也同时出现在富文本编辑器中&#xff0c;等于是有两张相同的图片&#xff0c;一张是我们服务器图片&#xff0c;一张是base64格式图片&#xff01;&#…

Unity3D在UI中加入Image图片

在将图片拖入到Assets后发现根本不能将图片拖入到UI中&#xff1a; 新建Image后在Source Image中也不能找到图片&#xff1a; 那是因为你没把图片设置为Sprite&#xff0c;图片只是Texture而已&#xff0c;只能作为贴图使用。 可以将图片设置为Sprite: 这样一切就正常了&#…

纯JS图片查看器

目前支持&#xff1a;放大、缩小&#xff08;含滚轮&#xff09;、旋转、还原 /*** 说明信息* date 2022/10/13 19:46:44* 初始化图片查看器* date 2022/09/21 14:40:06* id 唯一标识&#xff0c;指定id区域内的图片* params 扩展参数&#xff0c;设置图片大小&#xff0c;目前…

vue-quill-editor上传图片

问题&#xff1a; vue-quill-editor富文本编辑器上传图片默认为base64&#xff0c;存入数据库过于过于庞大&#xff0c;使用quill-image-extend-modulevue-quill-editor实现图片地址上传。 解决完之后效果图&#xff1a; 解决思路&#xff1a; 哈哈&#xff0c;第一步当然去…