C语言编程求矩阵乘积。 5
4个回答
展开全部
#include"stdio.h"
void main()
{
int a[3][2],b[2][3],c[3][3];
int i,j,k;
for(i=0;i<3;i++)//输入
{
for(j=0;j<2;j++)
scanf("%d",&a[i][j]);
}
for(i=0;i<2;i++)//输入
{
for(j=0;j<3;j++)
scanf("%d",&b[i][j]);
}
for(i=0;i<3;i++)//计算
{
for(j=0;j<3;j++)
{
c[i][j]=0;//初始化c
for(k=0;k<2;k++)
c[i][j]+=a[i][k]*b[k][j];
}
}
for(i=0;i<3;i++)//输出
{
for(j=0;j<3;j++)
printf("%d ",c[i][j]);
printf("\n");
}
}
2014-01-20
展开全部
#include <stdio.h>
int main()
{
printf("3*2矩阵:\n");
int i,j;
int a[6];
for (i=0; i<3; ++i)
{
for (j=0; j<2; ++j)
{
scanf("%d",&a[i*2+j]);
}
}
printf("2*3矩阵:\n");
int b[6];
for (i=0; i<2; ++i)
{
for (j=0; j<3; ++j)
{
scanf("%d",&b[i*3+j]);
}
}
int c[9];
for (i=0; i<3; ++i)
{
for (j=0; j<3; ++j)
{
int temp = 0;
for (int k=0; k<2; ++k)
{
temp += a[i*2+k]*b[k*3+j];
}
c[i*3+j] = temp;
}
}
for (int i=0;i<3;++i)
{
for(j=0; j<3;++j)
{
printf("%d ",c[i*3+j]);
}
printf("\n");
}
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include "iostream.h"
void MatrixChain(int *p,int n,int **m,int **s)
{
for(int i=1;i<=n;i++)
m[i][i]=0;
for(int r=2;r<=n;r++)
for( i=1;i<=n-r+1;i++)
{
int j=i+r-1;
m[i][j]=m[i+1][j]+p[i-1]*p[i]*p[j];
s[i][j]=i;
for(int k=i+1;k<j;k++)
{
int t=m[i][k]+m[k+1][j]+p[i-1]*p[k]*p[j];
if(t<m[i][j])
{
m[i][j]=t;
s[i][j]=k;
}
}
}
}
根据具体问题类型,进行步骤拆解/原因原理分析/内容拓展等。
具体步骤如下:/导致这种情况的原因主要是……
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<stdio.h>
int main()
{
int a[3][2]={{1,2},{3,4},{5,6}},b[2][3]={{1,2,3},{4,5,6}};
int i,j;
for(i=0;i<3;i++)
for(j=0;j<2;j++)
{
a[i][j]=a[i][j]*b[j][i];
printf("%d ",a[i][j]);
if(j==1)printf("\n");
}
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询