啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊不会呀
4条回答 默认 最新
技术专家团-小桥流水 2021-12-13 15:07关注矩阵A和矩阵B相乘的条件是A的列数等于B的行数。
假设A是m*n的矩阵,B是n*k的矩阵,结果就是m*k的矩阵
假设矩阵的行数和列数都小于10,代码如下:#include <stdio.h> int main() { int a[10][10],b[10][10],c[10][10]; int i,j,sum=0; int m,n,k,t; int x,y; printf("请输入矩阵A的行数和列数:"); scanf("%d%d",&m,&n); printf("请输入矩阵A的数值:\n"); for(i=0;i<m;i++) { for(j=0;j<n;j++) scanf("%d",&a[i][j]); } printf("请输入矩阵B的行数和列数:"); scanf("%d%d",&k,&t); printf("请输入矩阵A的数值:\n"); for(i=0;i<k;i++) { for(j=0;j<t;j++) scanf("%d",&b[i][j]); } if(n != k) { printf("矩阵A和矩阵B不能相乘\n"); return 0; }else { for (i=0;i<m;i++) { for (j=0;j<t;j++) { c[i][j]=0; //a的第i行与b的第j列相乘 for(x=0;x<k;x++) c[i][j] += a[i][x] * b[x][j]; //输出 printf("%d ",c[i][j]); } printf("\n"); } } return 0; }本回答被题主选为最佳回答 , 对您是否有帮助呢?解决评论 打赏 举报 编辑记录无用 1