| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 578 人关注过本帖
标题:关于矩阵相乘的问题
只看楼主 加入收藏
菜鸟11号
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2006-10-15
收藏
 问题点数:0 回复次数:2 
关于矩阵相乘的问题

两个矩阵相乘
如果把矩阵的元素都换成int型就没有问题了,我用的是float型
为什么呀
main()
{
float a[100][100],b[100][100],c[100][100],temp,result;
int m,p,n;
int i,j,k;
printf("\nplease scanf the m,p,n!");
scanf("%d %d %d",&m,&p,&n);
printf("\nplease scanf the num of a!");
for(i=0;i<=m-1;i++)
{
for(j=0;j<=p-1;j++)
scanf("%f",&a[i][j]);
}
printf("\nplease scanf the num of b!");
for(i=0;i<=p-1;i++)
{
for(j=0;j<=n-1;j++)
scanf("%f",&b[i][j]);
}
temp=0;
result=0;
for(i=0;i<=m-1;i++)
{
for(j=0;j<=n-1;j++)
{
for(k=0;k<=p-1;k++)
{
temp=a[i][k]*b[k][j];
result+=temp;
}
c[i][j]=result;
result=0;
}
}
printf("\nc[m][n]=a[m][p]*b[p][n]\n");
for(i=0;i<=m-1;i++)
{
for(j=0;j<=n-1;j++)
{
printf("%4f",c[i][j]);
}
printf("\n");
}

}

搜索更多相关主题的帖子: 相乘 矩阵 
2006-10-29 10:47
e4lich
Rank: 2
等 级:新手上路
威 望:4
帖 子:182
专家分:0
注 册:2006-10-26
收藏
得分:0 

试试这个啦
#include<stdio.h>
#include<math.h>
main()
{
float x,y,a[100][100],b[100][100],c[100][100],temp,result;
int m,p,n;
int i,j,k;
printf("\nplease scanf the m,p,n!");
scanf("%d %d %d",&m,&p,&n);
printf("\nplease scanf the num of a!");
for(i=0;i<=m-1;i++)
{
for(j=0;j<=p-1;j++)
scanf("%f",&x);
a[i][j]=x;
}
printf("\nplease scanf the num of b!");
for(i=0;i<=p-1;i++)
{
for(j=0;j<=n-1;j++)
scanf("%f",&y);
b[i][j]=y;
}
temp=0;
result=0;
for(i=0;i<=m-1;i++)
{
for(j=0;j<=n-1;j++)
{
for(k=0;k<=p-1;k++)
{
temp=a[i][k]*b[k][j];
result+=temp;
}
c[i][j]=result;
result=0;
}
}
printf("\nc[m][n]=a[m][p]*b[p][n]\n");
for(i=0;i<=m-1;i++)
{
for(j=0;j<=n-1;j++)
{
printf("%4.6f",c[i][j]);
}
printf("\n");
}

}


我只想变强!     
2006-10-29 11:48
菜鸟11号
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2006-10-15
收藏
得分:0 

没用啊,不是这个问题

2006-10-29 21:35
快速回复:关于矩阵相乘的问题
数据加载中...
 
   



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

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