高手看下break问题
有一下程序main()
{ int i,j,x=0;
for(i=0;i<2;i++)
{ x++;
for(j=0;j<=3;j++)
{if(j%2)continue; x++;}
x++;
}
printf("x=%d\n",x);
}
这个程序的执行结果是8,但是我自己算的时候却算不出来,我是这样考虑的,进入第一个for循环,执行了x++后进入内部for循环,里边的for循环执行4次,当j=3的时候不执行x++,其他3次都执行,此时x=4,再执行下面的x++,进入外部第二次for循环执行一次,得结果x=7,晕了,就是看不出来那错了,高手帮忙啊!
又想起了一个题
main()
{ int i=0,s=0;
for(;;)
{ if(i==3||i==5)continue;
if(i==6) break;
i++;
s+=i;
}
printf("%d\n",s);
}这个程序为什么是死循环啊,不是有break吗,为什么跳不出来呢,指教下,谢谢!!
感觉自己对break和continu语句掌握的不是很好,说点指教指教下!!