题目:
本题要求实现一个函数,求N
个集合元素S[]
的平均值,其中集合元素的类型为自定义的ElementType
。
函数接口定义:
ElementType Average( ElementType S[], int N );
其中给定集合元素存放在数组S[]
中,正整数N
是数组元素个数。该函数须返回N
个S[]
元素的平均值,其值也必须是ElementType
类型。
题目解答:
/*ElementType Average( ElementType S[], int N )
{
//浮点数组求和
float sum=0.0;
for(int i=0;i<N;i++){
sum+=S[i];
}
//返回平均数
return sum/N;
}*/
ElementType Average( ElementType S[], int N )
{
//浮点数组求和
float ave=0.0;
for(int i=0;i<N;i++){
ave+=S[i]/N;
}
//返回平均数
return ave;
}
本题中,无论是先求和再平均,还是直接计算平均数,都能通过测试,但还是建议采用第二种方式,避免溢出。