递归例题
呆码农梦中识bug,程序员哭求加工资
这个作者很懒,什么都没留下…
展开
-
递归讲解(附经典例题)
所谓递归,就是逐层求解母问题的子问题。重点是设置递归边界和递归式。简单举个栗子(即经典例题的第一道):求f(n) = 1+2+3+4+5+6+7+....n;子问题是求解f(n - 1), 即f(n) = n + f(n - 1)同理f(n - 1) = n - 1 + f(n - 2)........那么问题来了:什么时候停止呢?由题意可知自变量是不断减小的,总不...原创 2020-04-01 22:48:54 · 577 阅读 · 1 评论 -
6-6 十进制转换二进制(递归实现) (15分)
本题要求实现一个函数,将正整数n转换为二进制后输出。函数接口定义:void dectobin( int n );函数dectobin应在一行中打印出二进制的n。建议用递归实现。裁判测试程序样例:#include <stdio.h>void dectobin( int n );int main(){ int n; scanf("%d"...原创 2020-04-01 22:28:08 · 4802 阅读 · 1 评论 -
6-5 递归求Fabonacci数列 (10分)
本题要求实现求Fabonacci数列项的函数。Fabonacci数列的定义如下:f(n)=f(n−2)+f(n−1)(n≥2),其中f(0)=0,f(1)=1。函数接口定义:int f( int n );函数f应返回第n个Fabonacci数。题目保证输入输出在长整型范围内。建议用递归实现。裁判测试程序样例:#include <stdio.h>int...原创 2020-04-01 22:24:38 · 1354 阅读 · 0 评论 -
6-4 递归求简单交错幂级数的部分和 (15分)
本题要求实现一个函数,计算下列简单交错幂级数的部分和:f(x,n)=x−x2+x3−x4+⋯+(−1)n−1xn函数接口定义:double fn( double x, int n );其中题目保证传入的n是正整数,并且输入输出都在双精度范围内。函数fn应返回上述级数的部分和。建议尝试用递归实现。裁判测试程序样例:#include &...原创 2020-04-01 22:23:28 · 1066 阅读 · 0 评论 -
6-3 递归实现指数函数 (15分)
本题要求实现一个计算xn(n≥1)的函数。函数接口定义:double calc_pow( double x, int n );函数calc_pow应返回x的n次幂的值。建议用递归实现。题目保证结果在双精度范围内。裁判测试程序样例:#include <stdio.h>double calc_pow( double x, int n );int ma...原创 2020-04-01 22:20:56 · 2681 阅读 · 0 评论 -
6-2 递归求阶乘和 (15分)
本题要求实现一个计算非负整数阶乘的简单函数,并利用该函数求 1!+2!+3!+...+n! 的值。函数接口定义:double fact( int n );double factsum( int n );函数fact应返回n的阶乘,建议用递归实现。函数factsum应返回 1!+2!+...+n! 的值。题目保证输入输出在双精度范围内。裁判测试程序样例:#include ...原创 2020-04-01 22:19:36 · 3370 阅读 · 0 评论 -
6-1 计算1~n之和(递归实现)
本题要求实现一个用递归计算1+2+3+…+n的和的简单函数。int sum( int n ){ if(n < 1) return 0; return n + sum(n - 1);}原创 2020-04-01 22:16:06 · 566 阅读 · 0 评论