C语言 递归函数

递归函数 就是自身调用自身的函数,需要加条件来判定,否则无限调用 下面介绍一个简单的例子

 

 1 //递归函数整理
 2 long fun(int n)
 3 {
 4     long s;
 5     if(n==1||n==2)
 6         s=2;
 7     else
 8         s=n-fun(n-1);
 9     
10     return s;
11 }
12 
13 int main(int argc, const char * argv[])
14 {
15     printf("%ld",fun(6));
16     /*
17      = 6 - (5 - fun(4))
18      = 6 - (5 - (4 - fun(3)))
19      = 6 - (5 - (4 - (3 - fun(2))))
20      = 6 - (5 - (4 - (3 - 2)))
21      = 6 - (5 -4 + 3 - 2)
22      = 4
23      */
24     return 0;
25 }

 

posted @ 2014-10-19 22:12  杯水文圣  阅读(199)  评论(0编辑  收藏  举报