以下C++程序中有一句话我看不懂,请帮我解释一下吗? 谢谢!

doubleaver(doublex[],intn)//求平均值函数{inti;doublesum=0;for(i=0;i<n;i++){sum+=x[i];aver=i... double aver(double x[],int n) //求平均值函数
{int i;
double sum=0;
for(i=0;i<n;i++)
{sum+=x[i];
aver=int(sum/n*10)/10.0; //这句话我看不懂,能帮我解释一下吗?
}
return aver;
}
我觉得既然sum是定义成double型的,那么sum/n就应该是平均值了吧?
展开
 我来答
jiachunpeng
2011-06-20 · TA获得超过271个赞
知道小有建树答主
回答量:163
采纳率:0%
帮助的人:85.9万
展开全部
保留1位小数
example
sum=120.333
n=3
sum/n=40.111
sum/n*10=401.11
int(sum/n*10)=401
int(sum/n*10)/10.0=40.1
钟升哥
2011-06-20 · TA获得超过502个赞
知道小有建树答主
回答量:378
采纳率:0%
帮助的人:172万
展开全部
没错 此句话实现double到int的转换.....
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
pengjun122
2011-06-20
知道答主
回答量:47
采纳率:0%
帮助的人:22.1万
展开全部
平均值aver没有定义,而且每加一次就要求一次平均值,属于浪费内存,没有意义我帮你把函数改下,
aver=int(sum/n*10)/10.0; 这句话其实就是求平均值的意思,只是弄的复杂没有必要
double aver(double x[],int n) //求平均值函数
{
int i;
double sum=0;
double aver=0; //定义返回值
for(i=0;i<n;i++)
{
sum+=x[i];
}
aver=sum/n; //循环得到和值求一次平均值就可以了 没必要反复求
return aver;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式