题目详情
编写递归函数,求数组元素的和,函数的输入参数为数组和元素个数,返回最大值。在主函数中输入元素个数和数组元素,调用函数求和,在主函数中输出结果。设数组类型为整型,元素不超过100个。
输入:元素个数n和n个元素,用空格或换行隔开。
输出:数组元素和。
【提示】元素个数为0时返回和是0.
样例1输入:61 2 3 4 5 6
样例1输出:21
- 下面代码
#include <iostream>
using namespace std;
int first=1;
int sum(int *p, int n)
{
if(first){
if(n==0) return 0;
first=0;
n=n-1;}
if(n==0) return p[0];
return p[n]+sum(p,n-1);
}
int main()
{
int n;
cin>>n;
int *a = new int [n];
for(int i=0;i<n;i++)
{
cin>>a[i];
}
cout<<sum(a,n);
delete []a;
return 0;
}