void ArrayMultiplication(int a[],int b[],int c[],int n,int m,int p){
for(int i=0;i<n;i++){
for(int j=0;j<p;j++){
int sum=0;
for(int k=0;k<m;k++){
sum+=a[i*m+k]*b[k*p+j];
c[i*p+j]=sum;
}
}
}
}
题目:
用一维数组表示矩阵,完成任意两个矩阵(10*10
以内)a*b
运算,结果放在c矩阵中;
函数接口定义:
在这里描述函数接口。例如: void ArrayMultiplication(int a[],int b[],int c[],int n,int m,int p);
矩阵A为n*m
矩阵,B矩阵为m*p
矩阵,C=A*B
故C为n*p
矩阵
以下函数不用编写,测试程序已经完成。
void initArray(int x[],int n,int m);//初始化矩阵x为n行,m列;
//将一维数组x表示的矩阵以n行m列的形式输出;
void PrintArray(int x[],int n,int m)