C语言实现矩阵乘法

本文将使用C语言实现矩阵乘法;分别生成阶为m*n和p*q的两个矩阵,以得到阶为m*q的结果矩阵,其中n等于p。

示例代码:

#include <stdio.h>
 
void main(){
	int m=3, n=3, p=3, q=3, c, d, k, sum = 0;
	int first[m][n], second[p][q], multiply[m][q];

	first[0][0] = 1; first[0][1] = 2; first[0][2] = 0;
	first[1][0] = 0; first[1][1] = 1; first[1][2] = 1;
	first[2][0] = 2; first[2][1] = 0; first[2][2] = 1;

	second[0][0] = 1; second[0][1] = 1; second[0][2] = 2;
	second[1][0] = 2; second[1][1] = 1; second[1][2] = 1;
	second[2][0] = 1; second[2][1] = 2; second[2][2] = 1;

	if ( n != p ){
		printf("Matrices with entered orders can't be multiplied with each other.\n");
	}

	for(c=0;c<m;c++){
		for(d=0;d<q;d++){
			for(k=0;k<p;k++){
				sum = sum + first[c][k]*second[k][d];
			}
			multiply[c][d] = sum;
			sum = 0 ;
		}
	}

	printf("Product of entered matrices:\n");

	for(c=0;c<m;c++){
		for(d=0;d<q;d++){
			printf("%d\t", multiply[c][d]);
		}
		printf("\n");
	}

}

运行效果:

C语言实现矩阵乘法

原创内容,如需转载,请注明出处;

本文地址: https://www.perfcode.com/p/matrix-multiplication.html

分类: 计算机技术
推荐阅读:
C语言strcpy()函数:复制字符串 strcpy()函数会将源字符串中的内容复制到目标字符串中,直至遇到字符串终止符'\0';复制过程中,包括字符串终止符'\0'在内的所有字符都会被复制;
PySide6 使用QIcon为按钮添加图标 在PySide6中为按钮添加图标,可以使用QIcon类来加载图标文件,并使用QPushButton类的setIcon()方法将图标设置给按钮;
SQL删除数据库 如果要删除现有的数据库,则可以使用DROP DATABASE语句;
Golang中 import cycle not allowed 的解决方法 在Go语言中,在使用import导入相应的包时,你可能会碰到 import cycle not allowed 这样的问题,出现这样的问题是你的包没有规划好,导致包相互依赖;
PySide6 aboutQt()函数详细教程 PySide6.QtWidgets.QApplication类的aboutQt()函数用于显示一个关于Qt的简单消息框;该消息包括应用程序正在使用的Qt版本号;
Linux查看经常使用的命令 在Linux系统下,如果你想查看你常常使用的命令,那你运行一条命令即可实现: