循环结构较多在程序处理问题中需要重复处理方面用,重复执行某段代码,直到满足某个特定条件为止。C语言中提供了三种基本的循环结构:while循环、do...while循环和for循环。
while语句
while(表达式)语句,表达式也称循环条件表达式。表达式的值为“真”(以非0值表示)时,执行循环;为假(以0表示)时,不执行循环语句。
在无限循环中,循环条件包含if语句,x++终有一次x>5,则实行break;
break 提前终止循环
1.break可以使流程跳出switch结构,继续实行switch语句下面的语句。
下面这个是周一到周五没有break ,没有break则继续往下走执行周六周日。这是一个有问题的代码,我是为了更好的理解break的作用。
2.break可以用来从循环体内跳出循环体,提前结束循环。
像第一张图片一样跳出循环体。
continue 提前结束本次循环
continue
语句用于跳过当前循环的剩余部分,并开始下一次循环的迭代。它并不会提前结束整个循环,而是提前结束当前这一次的循环迭代。下面写一个代码能更清楚明白continue的作用:跳出偶数(即跳出不合条件的)。
对比break:跳出1以后的数(即整个循环体)。
do...while语句
do...while作用:先执行do语句的循环体,然后再判断while表达式中循环条件是否成立。while表达式后面一点要加分号。它和其他不一样的在于do...while循环会至少执行一次循环体,然后再根据循环条件判断是否继续执行。下面用列子更好明白:
第一张是循环条件(i>5),i满足大于5 则进入循环语句,一开始的i为0,并不满足条件,所以不继续循环,最后打印了i=0时,可见do...while循环执行了一次循环。
第二张则是(i<5),开始i从0开始,0小于5则进入循环,直至i>5不满足条件循环终止。
for语句
for(表达式1;表达式2;表达式3)
语句
表达式1:设置初始条件,只执行一次。可以一个,零个以及多个变量。
表达式2:循环条件表达式,用来判断是否循环。
表达式3:作为循环的调整,例如循环变量增值。
执行的顺序是先对表达式1进行表达式2,满足条件执行语句,最后再是表达式3。
for和while无条件等价:
表达式1;
while(表达式2)
{
语句;
表达式3;
}