请问下面这道题目哪位高手能帮我解释清楚些.主要是递归调用,我真的是不明白.
#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]还有就是如何做的加法.想的头都大了.谢谢了. 展开
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]还有就是如何做的加法.想的头都大了.谢谢了. 展开
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询