矩阵中填数

来源:百度知道 编辑:UC知道 时间:2024/06/07 20:14:15
按照蛇形将1,2···n的平方填到n*n矩阵中并输出(n由有键盘输入)
如:1 3 4 10 11
2 5 9 12 19
6 8 13 18 20
7 14 17 21 24
15 16 22 23 25

#include <iostream>

using namespace std;

class CMatrix
{
public:
CMatrix(unsigned long m,unsigned long n);
CMatrix(CMatrix& A); // COPY构造函数,必须要。
CMatrix(){_m=0;_n=0;_data=NULL;}//无参数构造函数,必须要。
~CMatrix(){if(_data!=NULL)delete _data;}

void DisplayOnCMD();
bool SetCell(unsigned long x,unsigned long y,double data);
double GetCell(unsigned long x,unsigned long y);
unsigned long GetM(){return _m;}
unsigned long GetN(){return _n;}
CMatrix operator+(const CMatrix &A);
CMatrix operator=(const CMatrix &A);
private:
unsigned long _m,_n;
double* _data;
};

CMatrix::CMatrix(unsigned long m,unsigned long n)
{
_m=m;_n=n;
_data=new double[_m*_n];
for(int i=0;i<_m*_n;i++)
_data[i]=0;
}

CMatrix::CMatrix(CMatrix& A)
{
_m=A._m;_n=A._n;
_data=new double[_m*_n];
for(int i=0;i<