變數count問題!!

當下列程式片段執行完畢後,變數count 的數值為多少?

count =0;

for(i=5; i<=10; i=i+1)

for(j=1; j<=i; j=j+1)

for(k=1; k<=j; k=k+1)

if (i==j ) count = count + 1;

ANS :45

請問程式run的過程?? 3Q

3 個解答

評分
  • ps
    Lv 5
    7 年前
    最佳解答

    這是3層迴圈,

    最內圈的k裡面單一個敘述是如果i等於j, count就加1

    所以程式只是算這3層迴圈有幾次i等於j

    i要等於j, 只有當j的迴圈跑到最後一個(因為j每次由1跑到i),

    但是這時k會跑j次(因為k每次由1跑到j)

    所以i迴圈等於5時, j等於i時, k跑了5次, count加5

    i等於6時, j等於i時, k跑了6次, count加6

    i等於7時, j等於i時, k跑了7次, count加7

    i等於8時, j等於i時, k跑了8次, count加8

    i等於9時, j等於i時, k跑了9次, count加9

    i等於10時, j等於i時, k跑了10次, count加10

    全部跑了5+6+7+8+9+10= 45,

    所以count = 45

    這個過程可以心算得出

  • MikeHK
    Lv 5
    7 年前

    這是你寫的嗎? ( 有反應有結果!)

  • 其威
    Lv 7
    7 年前

    請善用 debugger!

還有問題?馬上發問,尋求解答。