我有一个函数,它需要一个数组a[]
及其长度n
。我必须计算数组内数字的总和。我写了这个递归函数:
int somma(int a[], int n)
{
if (n == 0) { return 0; }
else {return a[n] + somma(a, n-1);}
}
我这样称呼它main()
:
int main() {
int array[5], ris;
printf("Type the numbers of the array: \n");
for(int i=0; i<4; i++)
{
scanf("%d", &array[i]);
}
printf("\nThe sum is: %d.", somma(array,4));
getch();
return 0;
}
如果数组包含array = [2; 4; 7; 5]
printf 必须显示 18 (2+4+7+5)。顺便说一下函数返回88,你能帮帮我吗?
我正在使用 wxDevC++。