1. 程式人生 > >遞迴實現一維陣列求和

遞迴實現一維陣列求和

#include<iostream>
#include<iomanip>
using std::cin;
using std::cout;
using std::setw;


int main()
{
int sum1(int a[],int length);
int sum2(int a[],int length);

const int len =10;
int array[10];
int num;
int i=0;
    while(i!=len)
{
   cin>>num;
array[i]=num;
++i;
}


cout<<sum1(array,len)<<setw(3)<<sum2(array,len);


    system("pause");
return 0;
    
}


//迴圈實現
int sum1(int a[],int length)
{
int sum=0;
for(int i=0;i<length;i++)
sum+=a[i];
return sum;
}


//遞迴實現
int sum2(int a[],int length)              
{
return length==0?0:sum2(a,length-1)+a[length-1];
}