n級(jí)臺(tái)階 每次走1級(jí)或2級(jí) 《C語言》怎樣爬樓梯?
《C語言》怎樣爬樓梯?樓梯有n個(gè)臺(tái)階。你可以一次上一兩步。你能通過編程計(jì)算出多少種不同的方法?[參考解(遞歸法)]依據(jù):樓梯有一步,只有一條路(一步上);兩步,有兩條路(一步上,或兩步上);遞歸:當(dāng)有
《C語言》怎樣爬樓梯?
樓梯有n個(gè)臺(tái)階。你可以一次上一兩步。你能通過編程計(jì)算出多少種不同的方法?
[參考解(遞歸法)]依據(jù):樓梯有一步,只有一條路(一步上);兩步,有兩條路(一步上,或兩步上);遞歸:當(dāng)有n步時(shí),有count(n)條路,最后一步是一步,有count(n-1)條路;最后一步是兩步,有count(n-2)條路。所以count(n)=count(n-1)count(n-2)。可見,這個(gè)問題的數(shù)學(xué)模型實(shí)際上是斐波那契數(shù)。
#包括和限制。H>int main(){unsigned long count(int n)int n unsigned long m printf(“please input the order of stairs:”)scanf(%d“,&n)m=count(n)printf(“有%Lu種爬樓梯的方法n”,m) return 0}無符號(hào)long count(int n){無符號(hào)long if(n==1)f=1 else if(n==2)f=2 else f=count(n-1)count(n-2)return(f)}12345678910112131415161718192021223