| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 433 人关注过本帖
标题:奇怪的矩阵相乘程序结果,求修改
取消只看楼主 加入收藏
zhht87
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2013-8-7
结帖率:57.14%
收藏
已结贴  问题点数:2 回复次数:1 
奇怪的矩阵相乘程序结果,求修改
主程序里边调用了一个矩阵相乘的程序,两个单位矩阵相乘,结果应该得到一个单位矩阵,但是计算的结果很奇怪,求各位高手解答

#include <stdio.h>
void matproduct(float a2[3][3],float b2[3][3],float c2[3][3]);

int main()
{
int i;
float s[3][3];
float a[3][3]={{1.0,0.0,0.0},{0.0,1.0,0.0},{0.0,0.0,1.0}};
float b[3][3]={{1.0,0.0,0.0},{0.0,1.0,0.0},{0.0,0.0,1.0}};

matproduct(a,b,s);

for(i=0;i<3;i++)
printf("%d %d %d \n",s[i][1],s[i][2],s[i][3]);

return 0;
}

void matproduct(float a2[3][3],float b2[3][3],float c2[3][3])      //对矩阵进行乘法运算,结果存储到c矩阵中
{int i1,j1;
 for (i1=0;i1<3;i1++)
     for (j1=0;j1<3;j1++)
         {c2[i1][j1]=a2[i1][0]*b2[0][j1]+a2[i1][1]*b2[1][j1]+a2[i1][2]*b2[2][j1];}
}
搜索更多相关主题的帖子: include return 主程序 
2013-08-10 01:17
zhht87
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2013-8-7
收藏
得分:0 
回复 楼主 zhht87
问题搞清楚了 应该用%f 输出 而不是用%d
2013-08-10 05:56
快速回复:奇怪的矩阵相乘程序结果,求修改
数据加载中...
 
   



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

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