网站制作建设需求友情链接网站源码
关键字break和continue的作用
作用:再循环中的作用都是 跳出循环,不再使循环向下进行 我们通过break在for循环、while循环、do-while循环里面的应用来更好的理解break关键字。
1. 在for循环中
我们通过代码剖析:
int main()
{for (int i = 0; i < 10; i++){if (i == 5)break;printf("%d ", i);}printf("\n");system("pause");
}
分析: 当i == 5的时候,break跳出for循环,所以当i == 5的时候,就不进行for循环在判断了,直接走到for循环后的printf("\n")。所以在for循环中输出的是0到4。
结果:
2. 在while循环中
int main()
{int i = 0;while (i < 10){if (i == 3)break;printf("%d ", i);i++;}printf("\n");system("pause");
}
分析: 当i==3的时候,跳出while循环。 所以只打印了0,1和2。
结果:
3. 在do-while循环中
int main()
{int i = 0;do{if (i == 5)break;printf("%d ", i);i++;} while (i <= 10);printf("\n");system("pause");
}
分析: 和在for循环、while循环中一样。遇到break直接跳出do-while循环体。所以打印的是0到4。
结果:
continue就与break截然不同。
作用: 在所有的循环中都是结束此次的循环,跳到下一次循环判断的位置(暂时不明白还没关系,后有案例讲解)
1. 在for循环中
我们还是通过代码来讲解:
int main()
{for (int i = 0; i < 10; i++){if (i == 5)continue;printf("%d ", i);}printf("\n");system("pause");
}
分析: 当i == 5的时候,遇到continue不在向下进行,跳到for循环体中条件判断的位置,进行i++,在进行下一次for循环。 所以当i == 5的时候遇到continue之后就不再向下进行打印,而是跳到for语句,进行i++,进行下一次的循环(i == 6的循环)。所以打印了除5外的所有元素。
结果:
2. 在while循环中
代码:
int main()
{int i = 0;while (i < 10){if (i == 3)continue;printf("%d ", i);i++;}printf("\n");system("pause");
}
分析: 程序陷入死循环。 当i==3时,跳到while循环的位置。但此时i并没有进行i++,i还是3。又进入循环i还是3,又跳到while(i<10)的位置。 所以一直死循环。在死循环之前打印了0,1,2 。
结果:
3. 在do-while循环中
代码:
int main()
{int i = 0;do{if (i == 5)continue;printf("%d ", i);i++;} while (i <= 10);printf("\n");system("pause");
}
分析: 和while的情况一样。 当i == 5的时候,遇到continue,跳到do-while循环条件判断的位置,也就是while(i<=10)的位置。但是此时i的值依旧是5, i<=10成立,继续进入循环,就一直卡在i == 5的地方,不往下进行。
结果: