习题4-11 兔子繁衍问题
1 /* 2 一对兔子,从出生后第3个月起每个月都生一对兔子。 3 小兔子长到第3个月后每个月又生一对兔子。 4 假如兔子都不死,请问第1个月出生的一对兔子,至少需要繁衍到第几个月时兔子总数才可以达到N对? 5 6 经过分析,本题是一道斐波拉契数列的问题。 7 */ 8 9 #include<stdio.h> 10 11 int main(void) 12 { 13 int n; 14 int months; 15 int a, b, s; 16 17 scanf_s("%d", &n); 18 19 months = 0; 20 a = 0; 21 b = 1; 22 s = 0; 23 24 while (s < n) 25 { 26 s = a + b; 27 a = b; 28 b = s; 29 months++; 30 } 31 32 33 printf("%d", months + 1); 34 return 0; 35 }