K12教育赛事综合服务平台
聚乐之家官方网站
下载聚乐之家官方App
专注青少年竞赛题库网站
下列四个递归函数的实现中,因终止条件设计不合理会导致无限递归或无法完成预期功能的是:
计算正整数n的阶乘的递归函数:
int fact(int n) { if(n == 0 || n == 1) return 1; return n * fact(n - 1); }
递归计算1到n的和的函数:
int sum(int n) { if(n == 1) return 1; return sum(n); }
递归打印从n到1的整数的函数:
void print(int n) { if(n == 0) return; std::cout << n << " "; print(n - 1); }
求斐波那契数列第n项(n≥1)的递归函数:
int fib(int n) { if(n == 1 || n == 2) return 1; return fib(n-1) + fib(n-2); }