c 迴圈的那個

時間 2022-10-16 13:30:04

1樓:

你知道這個程式遞迴執行的過程嗎?看一下這個圖!! 其實遞迴就是一個累死鎖機制在他沒執行完程式不會向下執行!!除非用執行緒!!仔細看一下,這東西就是要慢慢看!

2樓:_小_蘇

沒看懂你的問題啊,朋友.

3樓:狂容夢

3 a b c

2 a c b

1 a b c

move a,c

move a,b

1 c a b

move c,b

move a,c

2 b a c

1 b c a

move b,a

move b,c

1 a b c

move a,c

注意看這三句話:

hanoi(n-1,a,c,b); //將n-1個盤子從a move 到b

move(a,c); //無論幾個盤子,此步是將最大的盤子從a move到c

hanoi(n-1,b,a,c); //將n-1個盤子從b move 到c

然後遞迴呼叫

所以n個盤子就應該呼叫else中的move(a,c)n-1次(因為n==1時調的是if裡的move(a,c))

move(a,c)一共被調了2的n次冪-1次

c語言 for迴圈巢狀,c語言的for迴圈巢狀怎麼執行的?

迴圈的過程是先執行第一個大迴圈for i 0 i 3 i 此句中先給i賦值0,在判斷條件i 3是否成立賦值後的i 0了,所以條件成立,成立則做下面一條語句,就是for j 0 j 4 j 同樣這個迴圈還是先賦值j 0,在進行判斷j 4是否成立,成立就再做下一句。此時scanf語句後面已經沒有語句了,...

c語言do迴圈,C語言do迴圈

inf 殷志民 沒有do迴圈,只有do while迴圈 while迴圈和for迴圈,因此如果你是用do while迴圈,do和while兩者是密不可分的,do裡面描述了你在不斷的重複做什麼事,而while告訴編譯器下一次重複進入迴圈的條件是什麼,如果沒有while的話,整個迴圈的思想就少了一部分,也...

c語言 迴圈部分,c語言中的迴圈如何實現

我承認我是來蹭分的哈。include int fac int n double n ieme terme int n int main ifn while return 0 int fac int n else fac double n ieme terme int n n ieme terme l...