毛毛虫 发表于 2012-8-4 10:03:08

C语言continue疑问

main()
{
      int i;
      for (i = 1; i < 10;i++)
       {
      if((i%2) == 1 )
         {
             printf("I'm rather odd...\n");
             continue;   
         }
         printf("Even up! \n");
       }
   return 0;
}


代码摘自书本,鄙人对continue 的含义有些不理解;

没有 else 语句 他是如何执行 printf("Even up! \n");

迷你强 发表于 2012-8-4 10:08:36

这个很简单了。。。判断后如果不是就继续执行以后的语句,判断语句自然结束,不需要else

Ansifa 发表于 2012-8-4 10:10:19

continue 的意思是跳过这个循环的剩余语句,并且设置下次循环条件为真,直接进入下一次循环。这里,第一次continue 之后执行下次循环 if((i%2) == 1 )了。

对应的break是跳过循环的剩余语句,并且设置下次循环为假,就是完全跳出这次for,执行return 0;了

Ansifa 发表于 2012-8-4 10:12:10

本帖最后由 Ansifa 于 2012-8-4 10:30 编辑

   if((i%2) == 1 )
         {
             printf("I'm rather odd...\n");
             continue;   
         }
         printf("Even up! \n");   <-----靠continue; 来做else,跳过Even up!

毛毛虫 发表于 2012-8-4 10:16:17

迷你强 发表于 2012-8-4 10:08 static/image/common/back.gif
这个很简单了。。。判断后如果不是就继续执行以后的语句,判断语句自然结束,不需要else

1/2 余1 如何就执行 printf("I'm rather odd...\n");然后一个continue 就让循环继续下去
2/2 余0 不是余1 然后一个continue 就执行 printf("Even up! \n");

是不是可以这样理解

毛毛虫 发表于 2012-8-4 10:17:38

本帖最后由 毛毛虫 于 2012-8-4 10:18 编辑

Ansifa 发表于 2012-8-4 10:10 static/image/common/back.gif
continue 的意思是跳过这个循环的剩余语句,并且设置下次循环条件为真,直接进入下一次循环。这里,第一次c ...

对这个跳过剩余语句 我就是很不理解

以我这段为例哪段是剩余语句

Ansifa 发表于 2012-8-4 10:23:07

      for (i = 1; i < 10;i++)
       {
      if((i%2) == 1 )
         {
             printf("I'm rather odd...\n");
             continue;   
         }
         printf("Even up! \n");                   -----continue是跳过指它所在的最内层循环,就是这个for。所以剩余语句就是这句continue以后,for之内的语句
       }

Alexie 发表于 2012-8-4 10:29:58

;P 其实你把这段执行一次然后看输出就很清楚啦~ 就是直接执行下一次for循环去了

毛毛虫 发表于 2012-8-4 10:32:39

Alexie 发表于 2012-8-4 10:29 static/image/common/back.gif
其实你把这段执行一次然后看输出就很清楚啦~ 就是直接执行下一次for循环去了

速度太快 看不清楚啦

迷你强 发表于 2012-8-4 11:16:10

毛毛虫 发表于 2012-8-4 10:32 static/image/common/back.gif
速度太快 看不清楚啦

加入延时呗

迷你强 发表于 2012-8-4 11:16:23

毛毛虫 发表于 2012-8-4 10:32 static/image/common/back.gif
速度太快 看不清楚啦

delay(1000);

毛毛虫 发表于 2012-8-4 11:45:22

大体上 有些了解了 谢谢各位
页: [1]
查看完整版本: C语言continue疑问