zl程序教程

您现在的位置是:首页 >  后端

当前栏目

C语言矩阵乘法

C语言 矩阵 乘法
2023-09-27 14:26:25 时间

给定一个 m行、n 列的矩阵 A 和一个 n 行、m 列的矩阵 B。你需要用矩阵 A与矩阵 B 相乘,并且将 m行 m 列的乘积结果输出
在这里插入图片描述

#include <stdio.h>

int main() {
    int matrix_a[10][10];
    int matrix_b[10][10];
    int matrix_c[10][10];
    int m;
    int n;
    scanf("%d %d",&m,&n);
    //printf("%d %d\n",m,n);
    int i,j,k;
    for (i = 0; i < m ; i++) {
        for (j = 0; j < n; j++) {
            scanf("%d ", &matrix_a[i][j]);
            //printf("%d ",matrix_a[i][j]);
        } //printf("\n");
    }
    for (i = 0; i < n ; i++) {
        for (j = 0; j < m; j++) {
            scanf("%d ", &matrix_b[i][j]);
           // printf("%d ",matrix_b[i][j]);
        }// printf("\n");
    }
    
    
    for (i = 0; i < m ; i++) {
        for (j = 0; j < m; j++) {
             matrix_c[i][j] = 0;
            for (k = 0; k < n; k++) {
                matrix_c[i][j] += matrix_a[i][k]*matrix_b[k][j];
                // printf("%d ",matrix_c[i][j]);
            }
        } 
    }
    
    for (i = 0; i < m ; i++) {
        for (j = 0; j < m; j++) {
            printf("%d",matrix_c[i][j]);
            if (j != m - 1) printf(" ");
        }
        printf("\n");
    }
    
    return 0;
}