为什么这个if分支放这会进入死循环了

img

你自己想想看,第一个for循环i=1,里侧的for金循环直到i=12,那么该执行外层循环,i++.i=13,外层循环还能执行吗?你应该外层循环一个变量,内层循环一个变量,让他们毫无关系就可以按照你的想法进行运行了,所以建议你定义i的时候再定义一个j,这个j用于内层循环

双重循环怎么都用i作为循环变量啊,这不乱套了么
外层循环重新定义一个循环变量

内外循环变量不能相同,修改如下

int i,j,sum=0;
for(i=1;i<10;i++){
  for(j=1;j<12;j++){
    if(j % 3 == 0)
        break;
  }
  sum -= j;
}