Given the code fragment:



for (int ii = 0; ii < 3; ii++) {
int count = 0;
for (int jj = 3; jj > 0; jj--) {
if (ii == jj) {
++count;
break;
}
}
System.out.print(count);
continue;
}

What is the result?

A

011

B.

012

C.

123

D.

000

題解

外層for迴圈會執行三次。

第一次執行外層for迴圈,ii=0。內層for迴圈,jj的計數範圍是3~1,共執行3次。在這次外迴圈的執行中,jj都不會等於ii,因此第一次外層迴圈執行到最後,count變數的值不會被改變,會輸出「0」。

第二次執行外層for迴圈,ii=1。內層for迴圈,jj的計數範圍是3~1,執行到第三次時,jj會等於ii,所以要將count加1,然後立刻跳出內層for迴圈。第二次外層迴圈執行到最後,會輸出「1」。

第三次執行外層for迴圈,ii=2。內層for迴圈,jj的計數範圍是3~1,執行到第二次時,jj會等於ii,所以要將count加1,然後立刻跳出內層for迴圈。第三次外層迴圈執行到最後,會輸出「1」。