目录

第九次作业解析

      • 一、💥
      • 二、💥
      • 三、💥
      • 四、💥
      • 五、💥
      • 六、💥
      • 七、💥
      • 八、💥
      • 九、💥

一、💥

跳转到目录

关于递归的描述错误的是:( )
A.存在限制条件,当满足这个限制条件的时候,递归便不再继续
B.每次递归调用之后越来越接近这个限制条件
C.递归可以无限递归下去
D.递归层次太深,会出现栈溢出现象

🎸C

递归的条件
存在限制条件,当满足这个限制条件的时候,递归便不再继续
每次递归调用之后越来越接近这个限制条件
注意
递归层次太深,会出现栈溢出现象
递归不会无限递归,有限制条件,达到限制条件就会终止


二、💥

跳转到目录

根据下面递归函数:调用函数Fun(2),返回值是多少( )
A.2
B.4
C.8
D.16

int Fun(int n){  if(n==5) return 2; else return 2*Fun(n+1);}

🎸D

return 2*2*Fun(2+1);return 2*2*2*Fun(4+1);n==5;return 2*2*2*2;

三、💥

跳转到目录

打印一个数的每一位

递归方式实现打印一个整数的每一位

🎸小奔的结果:

void print(int k){ if (k > 9)print(k/10);printf("%d ", k % 10);}int main(){ int k = 0;scanf("%d", &k);//输入数print(k);//打印一个数的每一位return 0;}

四、💥

跳转到目录

求阶乘

递归和非递归分别实现求n的阶乘(不考虑溢出的问题)

🎸小奔的结果:

//递归#include int Factorial(int x){ static int y = 1;if (x > 0)y = Factorial(x - 1) * x;elsereturn y;}int main(){ int k = 0;scanf("%d"