8.while循环
-
一、循环三要素
-
e.g
image
- 执行过程:
-
13行:i的值为0
-
14行:循环(0<3)结果为true,进入循环
* >16行:显示“循环”
* >17行:i的值自增变为1 -
14行:循环(1<3)结果为true,进入循环
* >16行:显示“循环”
* >17行:i的值自增变为2 -
14行:循环(2<3)结果为true,进入循环
* >16行:显示“循环”
* >17行:i的值自增变为3 -
14行:循环(3<3)结果为false,跳出循环
* 循环变量:用于控制循环次数的变量
* 循环特点:循环体{ }执行结束之后,跳转到循环体条件处。(从下往上跳转)
* 死循环一定是错误的,必须避免死循环
-
- 执行过程:
-
-
二、循环周期表
-
e.g1
image
-
e.g2
image
-
-
三、循环程序的编程思路
-
示例:从1到100进行累加,从控制台输出结果。1+2+3+。。。+100.
image
-
本次循环的和 = 上一次循环累加的和 + 本次循环的新值
-
-
四、编程规范
- 一般情况下,改变循环变量的语句放在最后
- 一般情况下,循环条件中不使用 ”<=“或”>=“,而是使用”<“或”>“.
- 好处:方便计算循环次数:尽量不使用组合运算符,避免错误。
-
五、栏杆效应:n个栏杆,中间间隔是(n-1)个。第1个栏杆开始,第n个栏杆结束,结束的栏杆编号n,减去开始的栏杆编号1,得到间隔10
- e.g1
- 投掷骰子:在Unity中取随机数的函数:Random.Range(1,7);//得到最小1,最大6的随机整数
- 随机数种子方法中,左闭右开,最小值能取到,最大值取不到
- e.g2
-
从字符串”123456789“中取出从索引1开始的前3个字符。请问结束索引是多少?答案:结果是2,不是1.
-
C#中取字符和Java中的取字符区别,Java当中的结束索引取不到
image
-
- e.g1
-
六、break 和 continue语句
-
break:跳出整个循环,不会进行下一次循环
-
e.g求1-10之间的数的相加,但和大于10后,不再加,输出相加后的结果。
image
-
-
continue:结束本次循环,进行下一次循环。结束循环体的执行,跳转到判断循环条件处。
-
e.g求1-10之间不能被3整除的数相加,输出相加的结果。
image
-
在while()中执行continue语句跳转到判断循环条件处,continue语句之前,应改变循环变量,否则死循环
-
-