递归函数学习笔记

                      递归函数就是在它的函数体里调用它自己,执行递归函数将反复调用自身,每次调用进入新的一层,但任何会重复动作的函数都需要有终止条件。

#include<stdio.h>

int getunm(n)
{
int num;
if (n == 13)
{
return 1;
}
else
{
num = (getunm(n + 1)) * 2;
printf("序列数%d 总数%d\n", n, num);

}
return num;

}

int main()

{
int bum;
bum = getunm(1);//向递归传递一个参数

printf(" 序列数总量 %d \n", bum);
return 0;

}

主函数数向调用函数传递“1”,调用函数接收开始计算,先比对n的值,当n达到13层时return返回1,否则就执行第二个条件,同时也是限制递归只有13层,如果要计算第1层时它已经调用第二层,以此类推,必须从13层开始计算,所以13层是 返回值1给与函数本身*2则为2,并将它打印出来,12层为2*2=4,11层为8,以此类推1则是 4096,需要注意的以上内容只是递归函数自己计算的值,计算完后再执行:

bum = getunm(1);//向递归传递有个参数

printf(" 序列数总量 %d \n", bum);
return 0;

 

posted @   26岁求道者  阅读(39)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· winform 绘制太阳,地球,月球 运作规律
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示