S=0的位置为什么会对程序造成影响?

img

img


当s=0放在for的花括号里的时候,程序可以正常输出,但是当s=0放在int即花括号外面的时候就不可以正常输出,这是为什么?

当s=0放在for的花括号里时,每次执行外层循环都会将s初始化为0。
当s=0放在花括号外面时,只在程序启动时初始化一次,每次执行外层循环,s的值都在上一次的基础上累加,会越来越大。

放里面是对的,第二个for循环要用s做累加运算的,如果放在外面,那么s的值一直都保留这前一轮循环的值,s==i的判断条件就出问题了