int i; for(i=1;i<10;i+=2) { if(i%3==0) printf(

int i;
for(i=1;i<10;i+=2)
{ if(i%3==0) printf(int i;
for(i=1;i<10;i+=2)
{ if(i%3==0) printf("*");
else continue;
printf("#");
}
麻烦解释一下else continue的使用规则,谢谢

如果if中的条件(i能被3整除)不成立,就结束本次循环(注意不是退出循环)并开始下一次循环。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2017-12-28
这段代码的意思是,遍历1,3,5,7,9,如果能整除3就打印*,否则执行下一个循环,最后一条语句永远不会执行(无论你的怎么改)。
else是else,continue是continue,if else是分支语句,continue用在循环语句里,表示直接执行下一个循环,没有else continue怎么用一说追问

最后输出是*#*#,他既然不执行最后一条语句为啥输出结果是这样的呀,自学中,有点懵

追答

如果输出真像你所说,那只能说明你问的代码和你运行的代码有出入。

对不起!!!我错了

你的输入是对的

输出

因为i会等于1,3,5,7,9,其中i=3或9的时候,能整除3,所以打印*之后,就会接着向下执行,打印#

不好意思,晚上脑袋糊涂了。。

追问

谢谢,终于明白啦

本回答被提问者采纳
第2个回答  2017-12-28
for(i=1;i<10;i+=2)
{ if(i%3==0) printf("*");
else continue;
printf("#");
}
意思就是代码执行带continue就直接进入下一次循环。不再执行printf("#")追问

最后答案是*#*#,可是我还是不知道最后怎么求出来的,能写一下具体过程吗

追答 if(i%3==0)
 { 
     printf("*");
 }
 else
 {
  continue;
  }
  这样明白了吧?这里的continue是在else里面的,
  如果if为真,那么就不会执行continue。

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网