递归

来源:互联网 发布:java毫秒数转时间 在线 编辑:程序博客网 时间:2024/06/09 17:30

#include<stdio.h>
//函数main()调用了函数up_and_down()。我们把这次调用称为"第1级递归"。然后up_and_down()调用起本身,这次调用叫做"第2级递归",然后up_and_down()调用其本身,这次调用叫做"第2级递归"。第2级递归调用第3级递归,依此类推。共有4次递归void up_and_down(int);int main(void) {up_and_down(1);getchar();return 0;} void up_and_down(int n) {printf("Level %d: n location %p\n",n,&n);if (n < 4) {up_and_down(n+1);}printf("LEVEL %d: n location %p\n"n, &n);}


Level 1: n location 00AFFA80
Level 2: n location 00AFF9A8
Level 3: n location 00AFF8D0
Level 4: n location 00AFF7F8
LEVEL 4: n location 00AFF7F8
LEVEL 3: n location 00AFF8D0
LEVEL 2: n location 00AFF9A8
LEVEL 1: n location 00AFFA80

---------------------------------------------------------------------------------------------------------------------------------------------------


fibonacci序列 斐波那契数列Fibonacci sequence)

int fib(int n)  

{  
   if(n==1)  
       return (0);  
   else if(n==2)  
       return (1);  
   else   
       return (fib(n-2)+fib(n-1));  
}