cs02_07 2021-09-30 02:16 采纳率: 50%
浏览 45
已结题

c++如何实现 n个2*2矩阵相乘

通过文件输入总循环次数,其中每个循环包含n个数组,将数组转换为2*2的矩阵之后相乘,并输出n个矩阵相乘之后的结果。

img

img

  • 写回答

1条回答 默认 最新

  • DongGu. 2021-09-30 08:36
    关注
    #include <iostream>
    #include<vector>
     
    using namespace std;
     
    /*此程序两个矩阵均为行列相同的方阵*/
    void matrixMultiply(int a[2][2],int b[2][2],int c[2][2]);
     
    int main()
    {
        int A[2][2]={1,2,3,4};//初始化
        int B[2][2]={5,6,7,8};
        int C[2][2]={0,0,0,0};
     
        cout<<"矩阵A为:"<<endl;
        for(int i=0;i<2;++i)
        {
            for(int j=0;j<2;++j)
                cout<<A[i][j]<<" ";
            cout<<endl;
        }
     
        cout<<"矩阵B为:"<<endl;
        for(int i=0;i<2;++i)
        {
            for(int j=0;j<2;++j)
                cout<<B[i][j]<<" ";
            cout<<endl;
        }
        matrixMultiply(A,B,C);
     
        cout<<"矩阵A,B相乘后得到的矩阵C为:"<<endl;
        for(int i=0;i<2;++i)
        {
            for(int j=0;j<2;++j)
                cout<<C[i][j]<<" ";
            cout<<endl;
        }
     
        return 0;
    }
     
    void matrixMultiply(int a[2][2],int b[2][2],int c[2][2])//
    {
        for(int i=0;i<2;++i)
            for(int j=0;j<2;++j)
            {
                c[i][j]={0};
                for(int k=0;k<2;++k)
                {
                    c[i][j]+=a[i][k]*b[k][j];
                }
            }
    }
     
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 10月13日
  • 已采纳回答 10月5日
  • 创建了问题 9月30日

悬赏问题

  • ¥15 stm32开发clion时遇到的编译问题
  • ¥15 lna设计 源简并电感型共源放大器
  • ¥15 如何用Labview在myRIO上做LCD显示?(语言-开发语言)
  • ¥15 Vue3地图和异步函数使用
  • ¥15 C++ yoloV5改写遇到的问题
  • ¥20 win11修改中文用户名路径
  • ¥15 win2012磁盘空间不足,c盘正常,d盘无法写入
  • ¥15 用土力学知识进行土坡稳定性分析与挡土墙设计
  • ¥70 PlayWright在Java上连接CDP关联本地Chrome启动失败,貌似是Windows端口转发问题
  • ¥15 帮我写一个c++工程