标题:矩阵相乘
只看楼主
wh2000292
Rank: 1
等 级:新手上路
帖 子:30
专家分:0
注 册:2007-3-19
 问题点数:0 回复次数:6 
矩阵相乘

void jc(int *a,int *b,int *c,int m,int n)
{int i,j,k,x,y,l;
for(i=0;i<n;i++)
for(j=0;j<n;j++)
for(k=0;k<m;k++)
*(c+i*n+j)+=*(a+m*i+k)*(*(b+n*k+j));

}
main()
{int a[4][2],b[2][4],c[2][2]={0},i,j;
printf("input a:\n");
for(i=0;i<4;i++)
for(j=0;j<2;j++)
scanf("%d",&a[i][j]);
printf("input b:\n");
for(i=0;i<2;i++)
for(j=0;j<4;j++)
scanf("%d",&b[i][j]);
jc(&a[0][0],&b[0][0],&c[0][0],4,2);
for(i=0;i<2;i++)
{for(j=0;j<2;j++)
printf("%d ",c[2][2]);
printf("\n");
}
}
矩阵相乘,这个程序得不出正确结果 ,请帮忙找一下原因

搜索更多相关主题的帖子: 矩阵 相乘 
2007-07-06 08:14
nuciewth
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:我爱龙龙
等 级:贵宾
威 望:104
帖 子:9786
专家分:208
注 册:2006-5-23
得分:0 
用一维数组存储是个不错的想法.

你的程序就是:n*m * m*k 的结果应该是n*k的,但你写的是错的.明显变成2*2的了.
其实是有结果返回的.

倚天照海花无数,流水高山心自知。
2007-07-06 08:32
wh2000292
Rank: 1
等 级:新手上路
帖 子:30
专家分:0
注 册:2007-3-19
得分:0 
回复:(nuciewth)用一维数组存储是个不错的想法.你的...
我还是不太明白,可以给我具体说说吗,十分感谢

2007-07-06 08:51
nuciewth
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:我爱龙龙
等 级:贵宾
威 望:104
帖 子:9786
专家分:208
注 册:2006-5-23
得分:0 
就是结果应该得到4*4的矩阵,而你却是2*2的.
函数调用时候的问题.

倚天照海花无数,流水高山心自知。
2007-07-06 09:13
wh2000292
Rank: 1
等 级:新手上路
帖 子:30
专家分:0
注 册:2007-3-19
得分:0 
回复:(nuciewth)就是结果应该得到4*4的矩阵,而你却...

明白了,谢谢

[此贴子已经被作者于2007-7-6 9:25:21编辑过]


2007-07-06 09:23
wh2000292
Rank: 1
等 级:新手上路
帖 子:30
专家分:0
注 册:2007-3-19
得分:0 
回复:(nuciewth)就是结果应该得到4*4的矩阵,而你却...
void jucheng(int a[2][4],int b[4][2],int c[2][2])
{int i,j,k;
for(i=0;i<2;i++)
for(j=0;j<2;j++)
for(k=0;k<4;k++)
c[i][j]+=a[i][k]*b[k][j];
}
main()
{int a[2][4],b[4][2],c[2][2]={0},i,j;
for(i=0;i<2;i++)
for(j=0;j<4;j++)
scanf("%d",&a[i][j]);
for(i=0;i<4;i++)
for(j=0;j<2;j++)
scanf("%d",&a[i][j]);
jucheng(a,b,c);
for(i=0;i<2;i++)
{for(j=0;j<2;j++)
printf("%d ",a[i][j]);
printf("\n");
}
}
这个结果也得不出正确的结果 ,很闷

2007-07-06 09:34
nuciewth
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:我爱龙龙
等 级:贵宾
威 望:104
帖 子:9786
专家分:208
注 册:2006-5-23
得分:0 
全部是a .

倚天照海花无数,流水高山心自知。
2007-07-06 10:04



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-153131-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.391677 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved