如何正确使用break与continue
就一个问题而言,让大家轻松弄懂,我拿一个例子来解释:要求输出0~20不能被3整除的数
最简单的直接输出
#include <stdio.h>
int main()
{
for(int i=3;i<=20;i++)
{
if(i%3!=0)
printf("%d\n",i);
}}
接下来使用break
注意:break语句只能用于循环语句或者switch语句之中,而不能单独使用
#include <stdio.h>
int main()
{
for(int i=3;i<=20;i++)
{
if(i%3!=0)
printf("%d\n",i);
break;
}
}
为何崩溃没有输出呢?因为初值3%3等于0,printf不输出,而break结束了循环,假如初值是4,就可以输出4,也仅仅只能输出4
#include <stdio.h>
int main()
{
for(int i=4;i<=20;i++)
{
if(i%3!=0)
printf("%d\n",i);
break;
}
}
continue的用法
#include <stdio.h>
int main()
{
for(int i=4;i<=20;i++)
{
if(i%3==0)
printf("%d\n",i);
}
}
输出了能被3整除的数,用了continue呢?
#include <stdio.h>
int main()
{
for(int i=4;i<=20;i++)
{
if(i%3==0)
continue;
printf("%d\n",i);
}
}
continue只跳出一次循环,他只跳出了能被三整除的数,所以输出了不能被三整除的数,不会像break直接结束整个循环