如何递归实现数组求和

时间:2015-05-14 10:04:07   收藏:0   阅读:164

如何用递归实现数组求和

给定一个含有n个元素的整形数组a,求a中所有元素的和.

非递归算法:

int sumr(int *a,int n)
{
	int sum=0;
	for(int i=0;i<n;i++)
		sum+=a[i];
	return sum;
}


递归算法:

int sum(int *a,int n)
{

	return n==0?0:sum(a,n-1)+a[n-1];
}

递归实现的方法,如果数组元素个数为0,那么和为0,如果元素个数为n,那么先求出前n-1个元素的和,再加上a[n-1]即可。

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!