额,各位好啊 如有转载,请标明出处
本期主要谈 递归/递推/迭代 与 数组遍历
//FSP团队写
#include <stdio.h>
#include <string.h>
int Sum(int a[],int sum);
int Digui(int a[],int i,int sum);
int DiTui(int a[],int sum);
int main()
{
int iS[]={1,2,3,4,5};
int sum=(sizeof(iS)/sizeof(iS[0]));
printf("%u",Sum(iS,sum));
printf("\n");
printf("%u",Digui(iS,0,sum));
printf("\n");
printf("%u",DiTui(iS,sum));
printf("\n");
return 0;
}
//迭代
int Sum(int a[],int sum)
{
int su=0;
for(int i=0;i<sum;i++)
{
su+=a[i];
}
return su;
}
//递归
int Digui(int a[],int i,int sum)
{
if(i ==(sum-1))
{
return a[i];
}
else
{
return Digui(a,i+1,sum)+a[i];
}
}
//递推
int DiTui(int a[],int sum)
{
int s=0;
for(int i=0;i<sum;i++)
{
s=s+a[i];
}
return s;
}