xt10-5.cpp
上传用户:liubin
上传日期:2022-06-13
资源大小:85k
文件大小:1k
源码类别:

书籍源码

开发平台:

Visual C++

  1. #include <iostream.h>
  2. //using namespace std;
  3. class Matrix
  4.  {public:
  5.    Matrix();
  6.    friend Matrix operator+(Matrix &,Matrix &);
  7.    friend ostream& operator<<(ostream&,Matrix&);
  8.    friend istream& operator>>(istream&,Matrix&);
  9.   private:
  10.    int mat[2][3];
  11.  };
  12.  
  13. Matrix::Matrix()
  14. {for(int i=0;i<2;i++)
  15.   for(int j=0;j<3;j++)
  16.    mat[i][j]=0;
  17. }
  18. Matrix operator+(Matrix &a,Matrix &b)
  19. {Matrix c;
  20.  for(int i=0;i<2;i++)
  21.    for(int j=0;j<3;j++)
  22.      {c.mat[i][j]=a.mat[i][j]+b.mat[i][j];
  23.      }
  24.  return c;
  25. }
  26. istream& operator>>(istream &in,Matrix &m)
  27. {cout<<"input value of matrix:"<<endl;
  28.  for(int i=0;i<2;i++)
  29.   for(int j=0;j<3;j++)
  30.    in>>m.mat[i][j];
  31.  return in;
  32. }
  33. ostream& operator<<(ostream &out,Matrix &m)
  34. {for (int i=0;i<2;i++)
  35.   {for(int j=0;j<3;j++)
  36.    {out<<m.mat[i][j]<<" ";}
  37.     out<<endl;}
  38.  return out;
  39. }
  40. int main()
  41. { Matrix a,b,c;
  42.  cin>>a;
  43.  cin>>b;
  44.  cout<<endl<<"Matrix a:"<<endl<<a<<endl;
  45.  cout<<endl<<"Matrix b:"<<endl<<b<<endl;
  46.  c=a+b;
  47.  cout<<endl<<"Matrix c = Matrix a + Matrix b :"<<endl<<c<<endl;
  48.  return 0;
  49. }