2

我明天要考试,其中一道练习题如下:

for ($i = 3; $i++; $i %= 9) { Write-Host $i } 

这个问题的答案应该是这条线的最小可能数字等于 4,最大数字等于 9。

但是,如果你问我,最高数字是 8 吗?因为当 $i 变为 9 时,计算结果为 0?

如果(显然)错了,请纠正我。

4

1 回答 1

3

它也会打印一个9For loop..

for (INITIALIZATION; CONDITION; AFTERTHOUGHT) {..}

AFTERTHOUGHT在循环结束时执行。因此,它将执行Write-Host 9然后执行i = 9 % 9 = 0,此时,然后检查的条件变为 false。


此外:

i++后增量是条件检查显示 0 并退出循环的原因。如果它是 a ++i,那里就会有一个无限循环。

于 2013-02-07T20:20:35.340 回答