欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

C++基础编程题(40)“有两个矩阵a和b,均为2行3列。求两个矩阵之和。重载运算符“+”,使之能用于矩阵相加

程序员文章站 2022-06-08 13:24:58
...

C++基础编程题(40)“有两个矩阵a和b,均为2行3列。求两个矩阵之和。重载运算符“+”,使之能用于矩阵相加
C++基础编程题(40)“有两个矩阵a和b,均为2行3列。求两个矩阵之和。重载运算符“+”,使之能用于矩阵相加

#include
using namespace std;
class juzhen
{
public:
    juzhen();
    juzhen(int a[2][3]);
    void input_juzhen();
    void set_juzhen(int i,int j,int a);
    int get_juzhen(int i,int j);
    void print_juzhen();
    friend juzhen operator +(juzhen &c1,juzhen &c2);
private:
    int c[2][3];
};
juzhen::juzhen()
{
    for(int i=0;i<2;i++)
    {
        for(int j=0;j<3;j++)
        {
            c[i][j]=0;
        }
    }
}
juzhen::juzhen(int a[2][3])
{
    for(int i=0;i<2;i++)
    {
        for(int j=0;j<3;j++)
        {
            c[i][j]=a[i][j];
        }
    }
}
void juzhen::input_juzhen()
{
    for(int i=0;i<2;i++)
    {
        for(int j=0;j<3;j++)
        {
            cin>>c[i][j];
        }
    }
}
void juzhen::set_juzhen(int i,int j,int a)
{
    c[i][j]=a;
}
int juzhen::get_juzhen(int i,int j)
{
    return c[i][j];
}
void juzhen::print_juzhen()
{
    for(int i=0;i<2;i++)
    {
        for(int j=0;j<3;j++)
        {
            cout<<c[i][j]<<” “;
        }
        cout<<endl;
    }
}
juzhen operator +(juzhen &c1,juzhen &c2)
{
    juzhen c3;
    for(int i=0;i<2;i++)
    {
        for(int j=0;j<3;j++)
        {
            c3.set_juzhen(i,j,c1.get_juzhen(i,j)+c2.get_juzhen(i,j));
        }
    }
    return c3;
}
int main()
{
    juzhen j1,j2,j3;
    cout<<”请输入矩阵j1的元素:”<<endl;
    j1.input_juzhen();
    cout<<”请输入矩阵j2的元素:”<<endl;
    j2.input_juzhen();
    cout<<”矩阵j1:<<endl;
    j1.print_juzhen();
    cout<<”矩阵j2:<<endl;
    j2.print_juzhen();
    j3=j1+j2;
    cout<<”矩阵j1+j2:<<endl;
    j3.print_juzhen();
    system(“pause”);
    return 0;
}
相关标签: C++基础编程题