| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 563 人关注过本帖
标题:高手看下break问题
取消只看楼主 加入收藏
luoweijun
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:67
专家分:138
注 册:2009-6-12
结帖率:64.71%
收藏
已结贴  问题点数:20 回复次数:1 
高手看下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语句掌握的不是很好,说点指教指教下!!
搜索更多相关主题的帖子: break 
2009-08-30 16:57
luoweijun
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:67
专家分:138
注 册:2009-6-12
收藏
得分:0 
下面的那个程序看明白了,上面你说的内部for循环执行4次为什么只有来那个词执行了x++,我老想j=0一次,j=1两次,j=2三次,你是怎么算的哦,还有,里边的for循环结束后,在返回执行外部for循环的时候,第二次还要执行已经执行等于循环结束的内部for吗,不是这时的j已经等于4了吗?请教
2009-08-30 17:32
快速回复:高手看下break问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.012271 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved