学习数据结构的过程中,涉及到递归函数完成数组的最值、总和、平均值代码中平均值无法达到要求。
int getSum(int a[],int k,int &sum)
{
sum += a[k];
if(k==0)
return sum;
return getSum(a,k-1,sum);
}
细看发现,原因在于这里求和引用了外部变量sum后,如果再次调用此函数,sum的值会翻倍,造成平均值翻倍的错误。