1樓:匿名使用者
思路不要亂。這個月的兔子只有兩個**,一個**是上個月的老兔子,另一個**是這個月剛出生的兔子,而這個月剛出生的兔子,就是兩個月前的所有兔子,因為兩個月前的所有兔子,無論兩個月前就是老的,還是兩個月前剛生的,到了這個月就全部具有生育能力,每隻都可以下一對兒,所以可以得到一個遞推關係f(n) = f(n - 1) + f(n - 2)。那麼程式自然是
至於你的程式,很難把它改正確,因為這題壓根不是那個思路,那樣想會越想越亂的
2樓:用心愛你你不
#include
#include
#include
#define m 13
int main()
;for(i=2;i月兔子總數:%d\n",i,a[i]);
}getch();
return 0;}
3樓:劍影越林
這個題就是一個斐波那契數列
1,1,2,3,5,8,13,21,34
每個數等於前兩個數之和
用迴圈和遞迴都能寫
int fun(int month)
int arr[100]=;
int fei(int num)
if(arr[num-1])
ret+=arr[num-1];
else
return ret;}}
兔子繁殖問題 c語言程式設計
4樓:匿名使用者
根據題意,得出以下結果:
年份:0 0.5 1 1.5 2 2.5 3 3.5 4 ...
兔子:1 1 2 3 5 8 13 21 34...
序號: 0 1 2 3 4 5 6 7 8...
所以發現規律:除前兩個外,後面的則是等於前兩個的種即:a0=1,a2=1,an=a(n-1)+a(n-2)
這樣程式就可以開始編制了
#include "stdio.h"
main()
else
}printf("\n第%d年末總共會有%d對兔子",year,total);}
5樓:匿名使用者
用遞迴不是好的解決方法
c語言關於兔子繁殖的問題
6樓:聽不清啊
#include
int main()
return 0;}
7樓:叢青芬荀女
你這裡的兔子有繁殖期跟壽命的,我覺得用迴圈,判斷比較好追問:
這個我知道,for和if肯定要寫到**裡面啊,只是這裡要求兔子的對數,肯定是涉及遞迴的啊····因為是逐年增加的嘛···你好好想想··回答:
你先判斷一下n再做,如果n小於4,則是普通算拉,如果大於4,則要求出是4的幾倍,這個數的兔子不繁殖啦,再判斷是否大於6,大於6的還要減去死去的兔子啊補充:
我建議你立表看一下,就很清楚這個問題啦補充:
你要是想要的,我可以給你編一個。
C語言編程序,C語言程式設計序
我的演算法肯定是最好的。int insert int arr,int arrsize,int insvalue else break newarr i insvalue for i i arrsize i arr newarr return arrsize 1 num為陣列 n為陣列的長度,in為要...
c語言程式設計問題,c語言程式設計問題?
1 輸入有範圍,兩個變數輸入都需要驗證,方法變數處置範圍以外,迴圈判斷輸入。2 天數迴圈計數,日期0 6週期自增。用變數累加計數結果。下面是演示 include int main int i,j,a 7,n 366,cnt 0 while a 0 a 6 printf 請輸入a的值 0 6 scan...
c語言程式設計出錯問題,C語言程式設計出錯問題
include 第二個標頭檔案是可以不要的,這裡沒有用到int main if ch ch ch ch 第二個等號寫成了賦值,改掉就好了 printf n繼續輸入請按回車鍵,結束程式請按空格鍵 a getchar while a return 0 之後,這裡有執行結果 process termina...