| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1025 人关注过本帖
标题:新手求解。。把函数付给变量时总提示出错
只看楼主 加入收藏
o0慢节奏0o
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2010-3-28
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:10 
新手求解。。把函数付给变量时总提示出错
double sums(double a[5])//计算总成绩
{
double sum=0;
int i;
for(i=0;i<5;i++)
sum+=a[i];
return sum;
};
double aves(double a[5])//计算平均成绩
{
double ave;
int i;
ave=sums(a[5])/5;
return ave;
}

编译时总提示出错
rror C2664: 'sums' : cannot convert parameter 1 from 'double' to 'double []'
搜索更多相关主题的帖子: 变量 函数 求解 提示 
2010-05-31 00:12
o0慢节奏0o
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2010-3-28
收藏
得分:0 
出现好几次同种情况了。。
麻烦大家帮个忙
2010-05-31 00:30
yuls
Rank: 2
等 级:论坛游民
帖 子:23
专家分:60
注 册:2010-5-28
收藏
得分:0 
把代码全贴出来吧
2010-05-31 01:02
yuls
Rank: 2
等 级:论坛游民
帖 子:23
专家分:60
注 册:2010-5-28
收藏
得分:0 
第一对{  ……} 后面多了一个 ;   ....
2010-05-31 01:10
暗留香
Rank: 2
等 级:论坛游民
帖 子:49
专家分:75
注 册:2009-9-4
收藏
得分:0 
楼上貌似正解~
2010-05-31 07:39
bccn250
Rank: 5Rank: 5
等 级:职业侠客
帖 子:154
专家分:379
注 册:2010-5-25
收藏
得分:20 
什么正解啊,?错的,加了分号应该没问题,最多算是函数定义外的一条空语句
看看错误提示吧 rror C2664: 'sums' : cannot convert parameter 1 from 'double' to 'double []'
你在调用 sums函数时出错了,看看这句 ave=sums(a[5])/5;再看看函数定义double sums(double a[5])
函数定义,参数是一个 5个double的数组,而你调用的时候传递的是a[5],a[5]表示的是数组a的第6个元素
,超出数组边界就不说了, 最重要的是实参类型不对 函数要的是数组,你给的是数组的某个元素

double sums(double a[5])//计算总成绩
{
double sum=0;
int i;
for(i=0;i<5;i++)
sum+=a[i];
return sum;
};
double aves(double a[5])// 计算平均成绩
{
double ave;
int i;
ave=sums(a[5])/5;    //这里错了
return ave;
}

编 译时总提示出错
rror C2664: 'sums' : cannot convert parameter 1 from 'double' to 'double []'
2010-05-31 08:36
kongyu0212
Rank: 1
来 自:henan
等 级:新手上路
帖 子:1
专家分:0
注 册:2010-5-31
收藏
得分:0 
楼上正解
ave=sums(a[5])/5;
更改为ave=sums(a)/5;
2010-05-31 09:35
雪花1688
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2010-5-30
收藏
得分:0 
正确
2010-05-31 11:23
dominator
Rank: 2
等 级:论坛游民
帖 子:82
专家分:29
注 册:2009-2-16
收藏
得分:0 
呵呵·!正解·!!
2010-05-31 12:38
o0慢节奏0o
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2010-3-28
收藏
得分:0 
以下是引用bccn250在2010-5-31 08:36:29的发言:

什么正解啊,?错的,加了分号应该没问题,最多算是函数定义外的一条空语句
看看错误提示吧 rror C2664: 'sums' : cannot convert parameter 1 from 'double' to 'double []'
你在调用 sums函数时出错了,看看这句 ave=sums(a[5])/5;再看看函数定义double sums(double a[5])
函数定义,参数是一个 5个double的数组,而你调用的时候传递的是a[5],a[5]表示的是数组a的第6个元素
,超出数组边界就不说了, 最重要的是实参类型不对 函数要的是数组,你给的是数组的某个元素

double sums(double a[5])//计算总成绩
{
double sum=0;
int i;
for(i=0;i<5;i++)
sum+=a;
return sum;
};
double aves(double a[5])// 计算平均成绩
{
double ave;
int i;
ave=sums(a[5])/5;    //这里错了
return ave;
}

编 译时总提示出错
rror C2664: 'sums' : cannot convert parameter 1 from 'double' to 'double []'
改好了 谢谢啊
2010-05-31 22:31
快速回复:新手求解。。把函数付给变量时总提示出错
数据加载中...
 
   



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

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