谁帮我改改这个错误
#include<iostream>using namespace std;
class SparseMatrix // 稀疏矩阵类。
{
private:
int Rows,Cols,Count; //行数,列数,非零元素的个数。
Trituple * smArray; //存储三元组表的数组。
int MaxTerm; //数组的规模
public:
SparseMatrix()
{
Rows=0;
Cols=0;
Count=0;
MaxTerm=0;
smArray=NULL;
}
SparseMatrix (int Mrows,int Mcols,int Mcount,int Mmaxterm) //构造函数
{
if(Mrows<=0||Mcols<=0)
{
cout<<"error"<<endl;
exit(1);
}
if(Mrows==1&&Mcols==1)
{
cout<<"error"<<endl;
exit(1);
}
Rows=Mrows;
Cols=Mcols;
Count=Mcount;
MaxTerm=Mmaxterm;
smArray=new Trituple[Mrows*Mcols];
}
void create(void)
{
int a,b,c;
cout<<"请依次输入row,col,value"<<endl;
cin>>a>>b>>c;
while(a!=0&&b!=0&&c!=0)
{
for(int k=0;k<Count;k++)
smArray[k](a,b,c);
cout<<"请依次输入row,col,value"<<endl;
cin>>a>>b>>c;
}
}
void printout(void)
{
for(int i=0;i<Count;i++)
smArray[i].printT();
}
SparseMatrix Transpose() // 矩阵a转置。
{
SparseMatrix b;
b.Rows=Cols;
b.Cols=Rows;
b.Cout=Cout;
if(Cout>0)
{
int Bnumber=0;
for(int k=0;k<Cols;k++)
for(int i=0;i<Cout;i++)
if(a.smArray[i].col==k)
{
b.smArray[Bnumber].row=k;
b.smArray[Bnumber].col=a.smArray[i].row;
b.smArray[Bnumber].value=a.smArray[i].value;
Bnumber++;
}
}
return b;
}
};
class Trituple //三元节点类。
{
friend class SparseMatrix;
private:
int row;
int col;
int value;
public:
Trituple(int a,int b,int c) //构造函数
{
row=a;
col=b;
value=c;
}
void printT() //输出函数。
{
cout<<row<<" "<<col<<" "<<value<<endl;
}
};
int main(void)
{
cout<<"请输入矩阵的行数,列数,非零元素的个数:"<<endl;
int a,b,c;
cin>>a>>b>>c;
SparseMatrix sp1(a,b,c,10);
sp1.create();
sp1.printout();
// b=sp1.Transpose();
return 0;
}
//
// SparseMatrix Add (SparseMatrix b);
// SparseMatrix Multiply(SparseMatrix b);