古典问题(兔子生崽):有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?(输出前40个月即可)
程序分析:兔子的规律为数列1,1,2,3,5,8,13,21....,即下个月是上两个月之和(从第三个月开始)。
include
int main()
{
int a = 1, b = 1, temp, i;
printf("%12d%12d", a, b); // 输出前两项
for (i = 3; i <= 20; i += 2)
{
temp = a + b; // 计算下一项
printf("%12d", temp); // 输出下一项
a = b; // 更新a
b = temp; // 更新b
temp = a + b; // 再计算下一项
printf("%12d\n", temp); // 输出并换行
a = b; // 更新a
b = temp; // 更新b
}
return 0;
}