c语言实现两个矩阵相乘

#include<stdio.h>
#include<stdlib.h>
#define M 3
 
int main(void)
{
    int i,j,k,matrix1[M][M],matrix2[M][M],row1=M ,col1=M ,row2=M,col2=M,matrix[M][M];   
    /*为需要相乘的两个矩阵赋值:*/ 
    printf("输入第一个矩阵:\n");
    for(i=0;i<row1;i++){
        for(j=0;j<col1;j++){
            scanf("%d",&matrix1[i][j]); 
        } 
    } 
    printf("输入第二个矩阵:\n");
    for(i=0;i<row2;i++){
        for(j=0;j<col2;j++){
            scanf("%d",&matrix2[i][j]); 
        } 
    }
    /*初始化matrix:*/
    for(i=0;i<row1;i++){
        for(j=0;j<col2;j++){
            matrix[i][j]=0; 
        } 
    } 
     
    printf("The result:\n"); 
    for(i=0;i<row1;i++){
        for(j=0;j<col2;j++){
            for(k=0;k<col1;k++){
                matrix[i][j]=matrix[i][j]+matrix1[i][k]*matrix2[k][j]; 
            } 
        } 
    }
 
    for(i=0;i<row1;i++){
        for(j=0;j<col2;j++){
            printf("%d ",matrix[i][j]); 
        } 
        printf("\n"); 
    } 
    return 0;
}
原创文章 32 获赞 5 访问量 1999

猜你喜欢

转载自blog.csdn.net/elsieyin/article/details/105624541