兔子生崽问题。假设一对小兔的成熟期是一个月,即一个月可长成成兔,那么如果每对成兔每个月都可以生一对小兔,一对新生的小兔从第二个月起就开始生兔子,试问从一对兔子开始繁殖,一年以后可有多少对兔子?请用一维数组知识编程求解该问题。
提示:定义一个数组存储每个月兔子的数量。
**输出格式要求:"\nTotal = %d\n" "%4d"
程序运行示例如下:
1 2 3 5 8 13 ** 34 55 ** *** ***
Total = ***
(此程序只有一个测试用例,为避免泄漏答案,具体数值用*代替)
#include <stdio.h>
#define N 12
void Fibonacci(int f[], int n);
main()
{
int f[N], i;
Fibonacci(f, N);
printf("\nTotal = %d\n", f[N - 1]);
}
/* 函数功能:计算并打印Fibonacci数列的前n项 */
void Fibonacci(int f[], int n)
{
int i;
f[0] = 1;
f[1] = 2;
for (i = 2; i < n; i++)
{
f[i] = f[i - 1] + f[i - 2];
}
for (i = 0; i < N; i++)
{
printf("%4d", f[i]);
}
}