标签:元素 int 矩阵 d% 样例 long C语言 乘法
1 #include <stdio.h> 2 int main(void) 3 { 4 int n,m,l; 5 scanf("%d%d%d",&n,&m,&l); 6 long int a[n][m],b[m][l]; 7 long int c[n][l]; 8 int i,j; 9 for(i=0;i<n;i++) 10 for(j=0;j<m;j++) 11 scanf("%ld",&a[i][j]);//输入 12 for(i=0;i<m;i++) 13 for(j=0;j<l;j++) 14 scanf("%ld",&b[i][j]);//输入 15 for(i=0;i<n;i++) 16 for(j=0;j<l;j++) 17 c[i][j]=0;//c[][]初始化,方便后续进行c[][]+= 18 for(i=0;i<n;i++) 19 for(j=0;j<l;j++) 20 for(int t=0;t<m;t++)//引入t进行对应列与对应行的乘积求和 21 c[i][j]+=a[i][t]*b[t][j]; 22 for(i=0;i<n;i++) 23 { 24 for(j=0;j<l;j++) 25 printf("%ld ",c[i][j]); 26 printf("\n"); 27 } 28 return 0; 29 }
题面
编写一个程序,读取一个n×m矩阵A和一个m×l矩阵B,然后打印它们的乘积,一个n×l矩阵C。
输入
在第一行中,三个整数n、m和l由空格字符分隔。
在接下来的几行中,给出了n×m矩阵A和m×l矩阵B。
输出
打印n×l矩阵C的元素。相邻元素之间用一个空格字符分隔。
数据范围
- 1 ≤ n,m,l ≤ 100
- 0 ≤ 矩阵A、B中的元素 ≤ 10000
3 2 3 1 2 0 3 4 5 1 2 1 0 3 2
输出样例1 8 5 0 9 6 4 23 14
矩阵乘法:要求第一个矩阵(a[n][m])列数与第二个矩阵(b[m][l])行数相同
结果矩阵(c[n][l]):将矩阵Ⅰ的行中每一个数分别与矩阵Ⅱ的列中每一个数相乘并求和
如:c[3][5]=a[3][0]*b[0][3]+a[3][1]*b[1][3]+……
标签:元素,int,矩阵,d%,样例,long,C语言,乘法 来源: https://www.cnblogs.com/Ting-LOVE/p/15645071.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。