求次运算是怎么变成这个的

为什么这个它是x等于四的,如果当它为四时,那不是弄那个y=y+3那个吗,它后面又有一个continue结束当前循环啊?真的搞不明白,烦请告知一下,谢谢

img

img

continue是跳过本次执行下一次循环,不是结束循环,break才是结束循环,不再循环了 ,y为1 4 7 10, 10的时候才break,跳出循环,x就是为4

continue是跳过当前这一轮的循环并开始下一轮循环,break才是跳出整个循环。

for循环会在执行完循环体后,再进行X++,然后判断for循环的判定条件进行下次循环
①、X=Y=1,Y>=10不通过,Y%3==1通过,Y=1+3=4; 本轮循环结束,X++
②、X=2,Y=4,Y>=10不通过,Y%3==1通过,Y=4+3=7; 本轮循环结束,X++
③、X=3,Y=7,Y>=10不通过,Y%3==1通过,Y=7+3=10; 本轮循环结束,X++
④、X=4,Y=10,Y>=10通过,终止循环

看程序要仔细看,不要全凭脑补
明明写的是y%3==1,你为什么说x=4时走y=y+3
很显然y的初始值是1,而每次又+3,所以它永远除3都余1,所以每次都会+3
y每次+3,加4次,加到10,就break了,那y加了4次,x不也加4次吗

注意此处是输出的x,而if判断里面是y%3==1,而这个continue后面已经没有执行语句了,所以它相当于没有用。