请问下面这道题目哪位高手能帮我解释清楚些.主要是递归调用,我真的是不明白.

#include<iostream.h>intsumall(inta[],intsize){if(size==1)returna[0];returna[0]+=sumal... #include <iostream.h>
int sumall(int a[],int size)
{
if (size==1) return a[0];
return a[0]+=sumall(a+1,size-1);
}
void main()
{
int d[]={1,2,3,4,5};
cout<<sumall(d,sizeof(d)/sizeof(d[0]));

}主要解释为什么返回a[0]还有就是如何做的加法.想的头都大了.谢谢了.
展开
 我来答
xdoki
2006-05-27 · TA获得超过293个赞
知道小有建树答主
回答量:603
采纳率:0%
帮助的人:231万
展开全部
这个是一个数组求和的函数,使用的是递归的算法。

为什么返回a[0],是当数组为一个元素的时候,数组的和就等于元素本身。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式