| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 562 人关注过本帖
标题:查找源程序的错误
取消只看楼主 加入收藏
clint00
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2006-7-30
收藏
 问题点数:0 回复次数:4 
查找源程序的错误

大家给看个源程序,不知错哪里了,是关于矩阵乘法的
因为第一个矩阵的列等于第二个矩阵的行才可相乘,故输入中只有a,b,c其中b既是第一矩阵的列也是第二矩阵的行


#include "stdio.h"
#include "malloc.h"
#include "stdlib.h"

main()
{ int a,b,c,i,j,m,r;
float sn=0;
float *p,*p1,*e,*n;
float t=0;
printf("input hang a:");
scanf("%d",&a);
printf("input lie b:");
scanf("%d",&b);
printf("input another lie c:");
scanf("%d",&c);
p=(float*)malloc(a*b*sizeof(float));
p1=(float*)malloc(b*c*sizeof(float));
e=p;n=p1;
printf("input 1 array:");
for(i=0;i<a*b;i++)
{ scanf("%f",&t);
*(p+i)=t;

}
printf("input 2 array:");
for(i=0;i<b*c;i++)
{ scanf("%f",&t);
*(p1+i)=t;

}
for(i=0;i<a*b;i+=b)
{
for(m=0;m<c;m++)
{ for(j=0,r=0;j<b*c||r<b;j+=c,r++)
{p=p+i+r;
p1=p1+m+j;
sn=sn+(*p)*(*p1);
}printf("%f ",sn);
sn=0;p1=n;p=e;
} printf("\n");

}

}

2006-07-30 16:27
clint00
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2006-7-30
收藏
得分:0 
顶一下啊自己
2006-07-30 16:41
clint00
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2006-7-30
收藏
得分:0 

编译没有错误,但是运行结果有问题呀。
不知道是不是逻辑出错了~~

2006-07-30 17:28
clint00
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2006-7-30
收藏
得分:0 

此程序要做任意两矩阵的乘法,二维数组分配空间是确定的,所以用一维了

2006-08-20 23:14
clint00
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2006-7-30
收藏
得分:0 
有,现在不长上网
2006-08-20 23:16
快速回复:查找源程序的错误
数据加载中...
 
   



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

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