【新手求教】小白问一个关于矩阵乘法的问题
#include<iostream>
using namespace std;
void jzxc(int **a,int **b,int **c,int m,int n,int j,int k)
{
for(int i=0;i<m;i++)
for(int j=0;j<k;j++)
{
for(int u=0;u<n;u++)
{
c[i][j]=0;
c[i][j]+=a[i][u]*b[u][j];
}
}
}
void main()
{
int **p,**a,**b,m,n,j,k;
cin>>m>>n>>j>>k;//分别输入两个矩阵的行数和列数m,j分别代表p和a矩阵的行,同理J和k
//向内存分配P和a矩阵的空间
p=new int*[m];
for(int i=0;i<m;i++)
p[i]=new int[n];
a=new int*[j];
for(int i=0;i<j;i++)
a[i]=new int[k];
//判断矩阵是否可以相乘
if(n==j)
{
b=new int*[m];
for(int i=0;i<m;i++)
b[i]=new int[k];
}
else
cout<<"不满足矩阵乘法条件请重新输入"<<endl;
//输入2维数组好像错了
for(int i=0;i<m*n;i++)
cin>>**(p+i);
for(int i=0;i<j*k;i++)
cin>>**(a+i);
jzxc(p,a,b,m,n,j,k);//矩阵乘法算法
for(int i=0;i<m*k;i++)
{ cout<<**(b+i);
if((i+1)%k==0)
cout<<endl;
}
system("pause");
}
这是我的算法但是错了我不会调试求大佬帮助!