#include "stdio.h"
#include
#include
void Get(int a[])
{
int i;
srand(NULL);
for(i=0;i<100;i++)
a[i]=rand()%100+1;
}
void show(int a[])
{
int i;
printf("这一百个数字是:\n");
for(i=0;i<100;i++)
{
printf("%3d ",a[i]);
if((i+1)%10==0)
printf("\n");
}
}
long sum(int a[],int len)
{
if(len>0)
return sum(a,len-1)+a[len];
else
return a[0];
}
int main()
{
int a[100];
Get(a);
show(a);
long all=0;
all=sum(a,99);
printf("\n%d\n",all);
return 0;
}
#include
int sum(int*a,int n)
{
if(n-1==0)
{
return a[0];
}
else
{
return a[n-1]+sum(a,n-1);
}
}
int main()
{
int a[100]={1,2,3,4,5};
printf("%d",sum(a,5));
}
现给出递归函数:
int sum(int n)
{
if(n==1) return a[1];
else return a[n]+sum(n-1);
}
int add(int *a,int index)
{
if (index == 0)
{
return *a;
}
else {
return *(a+index) + add(a,index-1);
}
}
void main()
{
int a[100];
int n = 80;
int res = add(a,n);
}