蓝桥杯基础训练1571:矩阵乘法(C语言实现)

news/2024/11/2 14:24:01/

蓝桥杯基础训练1571:矩阵乘法(C语言实现)

在这里插入图片描述

#include <stdio.h>
int n, m;
int a[31][31];
int b[31][31];
int c[31][31];
//矩阵a是原数据,不会变
//矩阵b是乘a后的矩阵,相当于个中间变量 
//矩阵c是存放最后结果的矩阵 
void f(void)
{int i, j, times, sum, q=0;//判断0次幂的情况,输出单位矩阵 if(m==0){for(i=1; i<=n; ++i)for(j=1; j<=n; ++j){if(i==j)a[i][j] = 1;elsea[i][j] = 0;}for(i=1; i<=n; ++i){ for(j=1; j<=n; ++j)printf("%d ", a[i][j]);printf("\n"); }return;}//如果1次幂就输出本身 if(m==1){for(i=1; i<=n; ++i){ for(j=1; j<=n; ++j)printf("%d ", a[i][j]);printf("\n"); } return;}//核心部分 for(times=1; times<m; ++times) //矩阵相乘的次数 {for(i=1; i<=n; ++i)   //行标,第i行,行数 for(q=1; q<=n; q++)  //矩阵每一行都分别乘以全部列,共n列,每列一次 {sum = 0;   //初始化为零 for(j=1; j<=n; ++j)sum += b[i][j]*a[j][q];  //经过一次行乘以列 c[i][q] = sum;   //更新结果 }for(i=1; i<=n; ++i)for(j=1; j<=n; ++j)b[i][j] = c[i][j];  //让矩阵b等于c,进行后续计算 }//打印出结果 for(i=1; i<=n; ++i){for(j=1; j<=n; ++j)printf("%d ", c[i][j]);printf("\n");}return;
}
int main(void)
{int i, j;scanf("%d %d", &n, &m);//输入矩阵a for(i=1; i<=n; ++i)for(j=1; j<=n; ++j)scanf("%d", &a[i][j]);//赋值于矩阵b,让其和a相同 for(i=1; i<=n; ++i)for(j=1; j<=n; ++j)b[i][j] = a[i][j]; f(); return 0;
}

注释较偏向通俗,如有不足,请多指教,欢迎评论区留言。O(∩_∩)O



http://www.ppmy.cn/news/686203.html

相关文章

【总结】1571- 抛弃 moment.js ,基于 date-fns 封装日期相关utils

转自&#xff1a;jjjona0215 链接&#xff1a;https://juejin.cn/post/7151050708094189582 前言 本文将简要介绍前端常用日期处理库&#xff1a;官方停止维护的moment.js&#xff0c;无缝代替moment.js的day.js&#xff0c;逐渐流行的date-fns&#xff0c;最后基于date-fns封装…

CVE-2020-15778漏洞修复

漏洞描述 https://access.redhat.com/security/cve/cve-2020-15778 简单来说&#xff0c;就是scp命令是可以注入特殊字段&#xff0c;在目标主机上执行指令的。 原理是因为scp是通过ssh实现的&#xff0c;一样的需要用户名和密码才能登陆。也就是说&#xff0c;这个漏洞其实针对…

梁宁:VisionPro、GPT、Web3三件套齐备,元宇宙开启

本文内容整理自图灵社区对谈栏目直播&#xff0c;主题为 ChatGPT 真需求&#xff0c;从产品的第一性原理解析。 上篇内容回顾&#xff1a;梁宁&#xff1a;为什么中国没有像 ChatGPT 和 Vision Pro 这样的创新产品&#xff1f; 梁宁&#xff0c;产品战略专家&#xff0c;曾任湖…

算法设计与分析 第五次编程作业 1571. 最大流

题目描述 给出一个网络图&#xff0c;及其源点汇点&#xff0c;求出其网络最大流。 输入格式 第一行包含四个正整数 n , m , s , t n,m,s,t n,m,s,t, 分别表示点的个数&#xff0c;有向边的数量&#xff0c;源点序号&#xff0c;汇点序号。 接下来 m m m行每行三个正整数&a…

东北大学OJ-1571: 实验5-13:分段函数(多分支)

东北大学OJ-1571: 实验5-13:分段函数(多分支) 大家好,我叫亓官劼(q guān ji ),在CSDN中记录学习的点滴历程,时光荏苒,未来可期,加油~博客地址为:亓官劼的博客,B站昵称为:亓官劼,地址为亓官劼的B站 本文原创为亓官劼,请大家支持原创,部分平台一直在盗取博主的文…

有哪些工具或者软件堪称神器?

著作权归作者所有。 商业转载请联系作者获得授权&#xff0c;非商业转载请注明出处。 作者&#xff1a;居里安同学 链接&#xff1a;http://www.zhihu.com/question/36546814/answer/70322446 来源&#xff1a;知乎 直接搬运我在另一个问题的答案了&#xff1a;有哪些工具或者软…

markdown基本语法 【未修改完成!】

目录 Markdown 简介Markdown 编辑器推荐 在线版 1. dillinger2. StackEdit3. MaHua4. 简书5. 马克飞象windows 1. MarkdownPad2. MarkPad3. Smark4. MiuOSX 1. Mou2. MacDown3. Ulysses4. iA Writer5. MWeb跨平台 1. Cmd Markdown2. 小书匠编辑器3. FarBox4. Sublime Text 25. …

【Linux入门学习之】Ubuntu常用软件

【Linux入门学习之】Ubuntu常用软件 速配指南之软件参考 本文定位&#xff1a;作为速配指南的补充&#xff0c;列出国内用户比较常用的软件。请将论坛软件推荐版块的内容逐步转移至wiki&#xff0c;而非本文。 本文作用&#xff1a;为新手指明软件的方向&#xff0c;也可供已…