40、C语言高级主题深度解析

C语言高级主题深度解析

1. 递归方法

递归是一种强大的编程技术,适用于那些可以将大任务分解为一个或多个与原任务相似的小任务的问题。以阶乘问题为例,3的阶乘是 3 * 2 * 1 ,4的阶乘是 4 * 3 * 2 * 1 ,可以改写为 4 * 3! 。以下是一个计算阶乘的递归函数:

long int Factorial( long int num ) 
{ 
    if ( num > 1 ) 
        num *= Factorial( num - 1 ); 
    return( num ); 
} 

1.1 递归过程分析

当调用 Factorial(3) 时,过程如下:
1. 首次调用 Factorial(3) ,由于 3 > 1 ,执行 num *= Factorial( num - 1 ) ,即调用 Factorial(2)
2. 调用 Factorial(2) ,因为 2 > 1 ,再次执行 num *= Factorial( num - 1 ) ,调用 Factorial(1)
3. 调用 Factorial(1) ,此时

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值