回覆列表
  • 1 # 使用者5916393697425

    是自增運算,而且是先加1後再執行。

    例如:

    int i,k;

    for(i=0,k=0; i

    {

    k += i++;

    }

    第一次進入時i的初始值是0,k的初始值也是0。這時的i++並沒有在本次語句中起到加一的作用,而是要在本次操作結束後再起作用,也就是在第一次循 環完全結束後。進入迴圈體本人看,k += i++;這時由於這裡的是i++(需要先操作後加1),所以,k的值理所當然是0了,而在本句結束後i的值就進行了加1操作,在本次迴圈結束時又進行了一 次加1操作,所以本次迴圈結束後k=0,i=2;

    第二次進入時i的初始值是2,k的初始值是0。同理分析,在k += i++;後k的值為2了,而i的值也由於兩次i++變為了4。所以,本次迴圈結束後k=2,i=4;

    第三次進入時i的初始值是4,k的初始值是2。同理分析,在k += i++;後k的值由於經過原來的值與i當前的值相加後變成了6,而i的值同樣是在最後加了兩個1。所以在本次迴圈結束後k=6,i=6;

    第四次準備進入迴圈時,發現i的值已經比5大了。因此,程式終止。最後k的值為6,i的值也為6。

  • 中秋節和大豐收的關聯?
  • 兩個膽息肉需要手術治療嗎?