c语言中设计函数countRabbit,函数的功能是:假设一对大兔子每月生一对小兔子,每对新生兔子在出生一个月后又成长为大兔子,假若兔子都不死亡。请问:一对兔子,一年能繁殖成多少对兔子
时间: 2024-04-07 09:32:57 浏览: 20
以下是一个实现函数 `countRabbit` 的 C 代码:
```c
#include <stdio.h>
int countRabbit(int months) {
int adultRabbitPairs = 1; // 初始时有一对大兔子
int babyRabbitPairs = 0; // 初始时没有小兔子
for (int i = 1; i <= months; i++) {
int newBabyPairs = adultRabbitPairs; // 每对大兔子都可以生出一对小兔子
adultRabbitPairs += babyRabbitPairs; // 所有小兔子长大成为大兔子
babyRabbitPairs = newBabyPairs; // 新生的小兔子成为下个月的小兔子
}
return adultRabbitPairs + babyRabbitPairs; // 返回总兔子数
}
int main() {
int months;
printf("请输入月份:");
scanf("%d", &months);
int rabbitPairs = countRabbit(months);
printf("%d 个月后,一对兔子能繁殖成 %d 对兔子\n", months, rabbitPairs);
return 0;
}
```
在函数 `countRabbit` 中,我们使用循环来模拟每个月兔子的繁殖情况,每个月都会有一对新生的兔子成长为大兔子,同时所有小兔子都会长大成为大兔子。我们使用两个变量 `adultRabbitPairs` 和 `babyRabbitPairs` 来表示当前有多少对大兔子和小兔子,每个月结束后更新这两个变量,然后进行下一个月的模拟。最后,返回大兔子和小兔子的总数。
在 `main` 函数中,我们读入用户输入的月份,并调用 `countRabbit` 函数计算出一对兔子在这么多月后能繁殖成多少对兔子。