#include <stdio.h> int rabbit(int n) { if(n == 1 || n == 2) { return 1; } else { return rabbit(n-1) + rabbit(n-2); } } int main() { int n; printf("请输入月份:"); scanf("%d", &n); printf("第%d个月的兔子总数为:%d\n", n, rabbit(n)); return 0; }
时间: 2024-03-19 07:41:23 浏览: 46
#include <stdio.h>
这是一段 C 语言代码,用递归实现求解斐波那契数列中第 n 个数的值,其中 n 由用户输入。该程序定义了一个名为 rabbit 的函数,其实现方式为递归。当 n 等于 1 或 2 时,返回 1,否则递归调用 rabbit 函数计算 F(n-1) 和 F(n-2) 的值,并返回它们的和。主函数中,先从用户输入得到要求解的月份 n,然后调用 rabbit 函数计算第 n 个月的兔子总数,并输出结果。
需要注意的是,当要求解的月份 n 很大时,递归实现效率较低,可以改用循环实现,以提高效率。
阅读全文