while循环语句

就一句话:让数据在一定条件循环起来

 

      语法:

while(条件

{

        循环体代码

}

运行流程

先判断条件,为:true,再进入大括号,执行循环体,执行完毕再进行判断,还为:true,则继续执行循环体,周而复始一旦条件为:false,则直接跳过大括号。

 

       死循环

通过运行流程发现,条件为true或false,是while循环的重心,一旦条件始终为:true,程序会进入“死循环”状态,如下:

所以,条件的改变是跳出循环的关键。这一点必须重视。

 

      条件的更新

while语句中,我们大多数情况是通过“关系运算符”来作为判断条件的,这也是因为while的循环特性更适合通过关系运算符来判断。我通过以下案例演示一下:

一个班级有10名学生,我们想输出10名同学数据,如:成绩、身高、体重、年龄。我可以以学生的人数(20)作为条件,进行持续输出,如:

int num = 10;// 班级人数

int counts = 0;// 用于计数的变量,它需要在while中不断更新,并与num进行比较

while(counts < num

{

        输出每个学生成绩的逻辑;

        ++counts; // 每进入一次while,counts进行一次自增。

}

可以看到,一旦counts自增到10,那么条件 counts < num 则不再成立,这样就可以结束循环。因此,在通常的开发中,条件一定是不停更新的,只有这样才能避免进入“死循环”,并且很多时候,条件的更新是在循环体内部处理的。

掌握以上内容基本已经掌握了while语句的技巧了。

 

        while的嵌套

主要是两种:while-while嵌套、while-if嵌套。

while-while嵌套:

执行流程:先执行内部的while,在满足条件的情况下持续输出数据,一旦不再满足条件则结束,再执行外部的while,流程和内部while一样,直到结束。简单理解:先内后外

while(条件)

{

        while(条件)

        {

                循环体

        }

}

while-if嵌套:

执行流程:先进行while的条件判断,满足条件则进入循环体执行 if 的条件判断,然后再回到while语句,再进行判断,满足条件再进入循环体判断 if ,它的逻辑:while---if---while---if。。。这样循环执行,而不像while-while那样“先里后外”。

while(条件)

{

        if(条件)

        {

                代码

        }

}

 

        控制流程关键词

结束循环:break

和switch一样,一旦break出现,那么即使判断条件还满足循环,也要结束while语句,执行下方代码了。break依旧是一位终结者。但要注意一点,如果是while-while嵌套循环,甚至多层while嵌套,break只是结束本层的while,而不是结束所有的while。

继续循环:continue

如果出现continue,则结束本次循环,立刻回到条件判断处,如果满足则按while的流程执行。

 

总结:

1、while语句一定要重视它的条件,常用关系运算符作为判断条件;

2、条件变量一定要注意它的更新,否则容易进入“死循环”;

3、while-while嵌套、while-if嵌套的流程要区分;

4、终结者break出现只跳出本层while循环。

 

while口诀:

“while”语句要记牢,条件变化最重要;

一旦疏忽没写上,“死循环”则会来到。

 

更多推荐