标题:这里为什么是av=aver(sp);而不是av=aver(*sp);
只看楼主
liyang0430
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:98
专家分:159
注 册:2009-6-9
结帖率:100%
已结贴  问题点数:35 回复次数:2 
这里为什么是av=aver(sp);而不是av=aver(*sp);
float aver(float *pa);
main(){
float sco[5],av,*sp;
int i;
sp=sco;
printf("\ninput 5 scores:\n");
for(i=0;i<5;i++) scanf("%f",&sco[i]);
av=aver(sp);
printf("average score is %5.2f",av);
}
float aver(float *pa)
{
int i;
float av,s=0;
for(i=0;i<5;i++) s=s+*pa++;
av=s/5;
return av;
}


这里为什么是av=aver(sp);而不是av=aver(*sp);

搜索更多相关主题的帖子: aver 
2010-05-07 07:51
ldg628
Rank: 12Rank: 12Rank: 12
等 级:火箭侠
威 望:3
帖 子:526
专家分:3036
注 册:2009-6-23
得分:25 
楼主函数定义的是要传指针,如果传*sp(sp指向地址的内容),在本段程序中与函数实现有出入

楼主可能是把定义的float aver(float *pa)看成是传指针指向的值了。。。。定义的时候与使用的时候弄混淆了
2010-05-07 09:03
炫舞小子
该用户已被删除
得分:10 
提示: 作者被禁止或删除 内容自动屏蔽
2010-05-07 09:12



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




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

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