在您的第一个代码中
At case i=0
内循环以条件开始j=1
j=1 initialized **Condition satisfies** continue
j=2 incremented **Condition satisfies** continue
j=3 incremented **Condition Failed** loop ends
内部首先执行它完整的循环并倾向于增加 i 现在 i=1
再次
j=1 initialized **Condition satisfies** continue
j=2 incremented **Condition satisfies** continue
j=3 incremented **Condition Failed** loop ends
但是在您的第二个代码中, j 在外部声明,一旦 j 设置为 3,它就保持不变。所以第二个循环的条件失败了。
在情况 i=0
j=1 declared **Condition satisfies** continue
j=2 incremented **Condition satisfies** continue
j=3 incremented **Condition Failed** loop ends
在情况 i=1
j=3 Already set**Condition Failed** loop ends
循环失败