线代----矩阵乘法

来源:互联网 发布:python 灰度图转rgb 编辑:程序博客网 时间:2024/06/05 15:44

复制下列代码--找个编译器编译一下


代码:

#include<cstdio>#include<cstring>#include<algorithm>using namespace std;#define LL long longstruct node{int n,m;LL shu[20][20];void clear(){for (int i=0;i<n;i++)for (int j=0;j<m;j++)shu[i][j]=0;}node operator * (const node &B ) const {node C;C.n=n;C.m=B.m;C.clear();for (int i=0;i<C.n;i++)for (int j=0;j<C.m;j++)for (int k=0;k<m;k++)C.shu[i][j]+=shu[i][k]*B.shu[k][j];return C;}}A,B,C;int main(){printf("请输入第一个矩阵的n和m: ");scanf("%d%d",&A.n,&A.m);printf("请输入第一个矩阵中的元素:\n");for (int i=0;i<A.n;i++)for (int j=0;j<A.m;j++)scanf("%lld",&A.shu[i][j]); printf("请输入第二个矩阵的n和m: ");scanf("%d%d",&B.n,&B.m);printf("请输入第二个矩阵中的元素:\n");for (int i=0;i<B.n;i++)for (int j=0;j<B.m;j++)scanf("%lld",&B.shu[i][j]);C=A*B;printf("相乘矩阵n , m 为  %d  %d\n",C.n,C.m);for (int i=0;i<C.n;i++){for (int j=0;j<C.m;j++)printf("%lld  ",C.shu[i][j]);printf("\n");}return 0;}/*2 21 21 42 23 52 7*/


0 0