求递归函数的例子解析

来源:学生作业帮助网 编辑:作业帮 时间:2024/11/20 23:28:22
求递归函数的例子解析
xTn@+y %}!$P:\uHpjdӟЅ}\@];5Byx~IvY&~D!zI/5ϩ1q8 kt8kXSݲSԬ  /IXu ZM@/k3:[ oi;2Sp$ݳjgr<7JPS~ G["-$Xv/:D6Vdlw{!o)Dk,&fx\ABYO!5/徬FAg8YC^ Cy8D8Bdo2jV]l?@:~b'bn(e1/(9dFGlڶ=uNaul=qDUB8>8(׀O NBP

求递归函数的例子解析
求递归函数的例子解析

求递归函数的例子解析
刚才回答了一次了:
求1+2+……+100的和
先分析一下.第一递归变量的问题,从题目上看应该取1,2,……,100这些变量的值作为递归的条件;第二就是如何终止的问题,从题目上看应该是当数为100的时候就不能往下加了.那么我们试着写一下程序.
int add(int);
main()
{
int num=1,sn;
sn=add(num);
printf("%d\n",sn);
getch();
}
int add(int num)
{
static int sn;
sn+=num;
if(num==100) return sn;
add(++num);
}
分析一下程序:前调用add(1),然后在子函数中把这个1加到sn上面.接着调用add(2),再把sn加2上来.这样一直到100,到了100的时候,先加上来,然后发现满足了if条件,这时返回sn的值,也就是1+2+……+100的值了.