多选择结构和循环语句

If-else 双选择结构

语法结构:

              当布尔表达式为真时,执行语句块1,否则,执行语句块2。也就是else部分

流程图:


如图中所示,条件运算符有时候可用于代替if-else

判断闰年的小案例

根据用户输入的年份,判断该年是平年还是闰年

分析:1.获取用户输入的年份;scanner

*    2.判断该年是平年还是闰年?

*    闰年的判断条件:能被4整除并且不能被100整除,或者能被400整除



if-else if-else多选择结构

语法结构:

当布尔表达式1为真时,执行语句块1;否则,判断布尔表达式2,当布尔表达式2为真时,执行语句块2;否则,继续判断布尔表达式3······;如果1~n个布尔表达式均判定为假时,则执行语句块n+1,也就是else部分


实际操作:

switch多选择结构

 switch语句会根据表达式的值从相匹配的case标签处开始执行,一直执行到break语句处或者是switch语句的末尾。如果表达式的值与任一case值不匹配,则进入default语句

当等值判断的情况才能使用switch,而当做区间判断的时候,不能使用switch

break的作用是跳出switch结构,否则会出现case穿透,case可以穿透,利用其可以穿透的特性可以简化代码。

例如:

语法结构:

流程图:


 switch语句会根据表达式的值从相匹配的case标签处开始执行,一直执行到break语句处或者是switch语句的末尾。如果表达式的值与任一case值不匹配,则进入default语句


循环结构

循环结构主要分为两种类型:

1.当型

  当布尔表达式条件为true时,反复执行某语句,当布尔表达式的值为false时才停止循环,比如:while与for循环。

2.直到型

先执行某语句, 再判断布尔表达式,如果为true,再执行某语句,如此反复,直到布尔表达式条件为false时才停止循环,比如do-while循环。

while循环

在循环刚开始时,会计算一次“布尔表达式”的值,若条件为真,执行循环体。而对于后来每一次额外的循环,都会在开始前重新计算一次。

语法结构:

流程图:


实际操作:求1到100之间的累加和

注意:这里的自增量就是让循环能够结束的重要因素,可避免陷入死循环。


操作实例2:计算100--1000之间的水仙花数


注意:print后面的ln起到的是换行的作用,如果去掉,就可以让结果横向显示

do-while循环

do-while循环结构会先执行循环体,然后再判断布尔表达式的值,若条件为真,执行循环体,当条件为假时结束循环。do-while循环的循环体至少执行一次。

语法结构:

do-while总是保证循环体至少会被执行一次

流程图:


操作实例:计算1———100之间的奇数和


统计闰年的个数



for循环

for循环语句是支持迭代的一种通用结构,是最有效、最灵活的循环结构。for循环在第一次反复之前要进行初始化,即执行初始表达式;随后,对布尔表达式进行判定,若判定结果为true,则执行循环体,否则,终止循环;最后在每一次反复的时候,进行某种形式的“步进”,即执行迭代因子。

流程:先由初始化部分输出一个赋值后的变量,然后进行条件判断,如果为true则进入循环体,然后执行迭代因子后回到条件判断再次进行判断,知道判断结果为false,结束循环。

语法结构:

流程图:

操作实例:计算1—100之和


1.无论在初始化还是在步进部分,语句都是顺序执行的。

      2.尽管初始化部分可设置任意数量的定义,但都属于同一类型。

      3.约定:只在for语句的控制表达式中写入与循环变量初始化,条件判断和迭代因子相关的表达式。

      初始化部分、条件判断部分和迭代因子可以为空语句,但必须以“;”分开

操作:打印100遍--->"我是最棒的"

此外,对应以上的循环结构,以下有三种情况可会让循环结构进入死循环状态:


©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容