带你学c带你飞拾遗3
这是一个有趣的古典数学问题:如果说兔子在出生两个月后,就有繁殖能力,在拥有繁殖能力之后,这对兔子每个月能生出一对小兔子来。假设所有兔子都不会死去,能够一直干下去,那么两年之后可以繁殖多少对兔子呢?#include<stdio.h>
int main()
{
int i,j,n,a=1,b=1,c=2;
for(n=2;n<=8;n++)
{
a=a+c;
b=b+a;
c=b+c;
}
printf("%d",c);
return 0;
}
我的代码,为什么最后结果不对呢,我推算到第九个月还是符合的 #include <stdio.h>
int main()
{
int a = 0, b = 1, t;
for(int i = 0; i < 24; i++){
t = a;
a = b;
b = t + a;
printf("第%2d月:%d\n", i+1, a);
}
return 0;
}第 1月:1
第 2月:1
第 3月:2
第 4月:3
第 5月:5
第 6月:8
第 7月:13
第 8月:21
第 9月:34
第10月:55
第11月:89
第12月:144
第13月:233
第14月:377
第15月:610
第16月:987
第17月:1597
第18月:2584
第19月:4181
第20月:6765
第21月:10946
第22月:17711
第23月:28657
第24月:46368 傻眼貓咪 发表于 2021-12-29 23:37
原来第八月就想错了。。 傻眼貓咪 发表于 2021-12-29 23:37
实际上第三个月月初的时候第二对小兔子就在成长了,不会等到下个月再长大 学习了
页:
[1]