1、Version 2011 版权所有 北京印刷学院 杨树林 E-mail:第二章 流程控制与异常处理Version 2011 版权所有 北京印刷学院 杨树林 E-mail:目录v2.1 分支结构v2.2 循环结构 v2.3 异常处理 Version 2011 版权所有 北京印刷学院 杨树林 E-mail:2.1 分支结构vif语句 l 简单 if语句(单分支结构)if(布尔表达式 )语句; Version 2011 版权所有 北京印刷学院 杨树林 E-mail:l ifelse 语句(双分支结构) if(布尔表达式 ) 语句 1;else 图 2-2 双分支结构流程图语句 2;Version 2
2、011 版权所有 北京印刷学院 杨树林 E-mail:l 嵌套 if语句(嵌套结构) n 嵌套 if语句是指在 if语句中又包含 if语句。 Version 2011 版权所有 北京印刷学院 杨树林 E-mail:l 多选择 if语句(多分支结构)if(布尔表达式 1)语句 1;else if(布尔表达式 2) 语句 2;. . else if(布尔表达式 n) 语句 n; else 语句 n+1; Version 2011 版权所有 北京印刷学院 杨树林 E-mail:例如,下面的程序实现输入成绩 mark,输出对应的等级:优( 90mark100)良( 80mark 90)中( 70mar
3、k 80)及格( 60mark 70)不及格( mark 60)Version 2011 版权所有 北京印刷学院 杨树林 E-mail:v案例 2-1 求一元二次程的根l 设计程序求一元二次方程的根,要求输入二次方程的三个系数,能够判断是否为二次方程,如果是二次方程,根据判别式,按不同的情况求出方程的根。 Version 2011 版权所有 北京印刷学院 杨树林 E-mail:l switch语句switch(表达式 )case 常量表达式 1: 语句 1;break;case常量表达式 2: 语句 2;break;.case常量表达式 n: 语句 n;break;default :语句 n+
4、1;break; Version 2011 版权所有 北京印刷学院 杨树林 E-mail:l 使用 switch语句需要注意以下几个问题:n switch之后括号内的表达式必须兼容 int,可以是 byte、short、 int、 char以及枚举类型,不能是长整型或其他任何类型。n 在 case后的各常量表达式的值不能相同,否则会出现错误。n 在 case后,允许有多个语句,可以不用 括起来。n 每种情况执行完,一般使用 break跳出 switch结构,否则程序继续向下执行。n case和 default语句的先后顺序可以变动,而不会影响程序执行结果。但把 default语句放在最后是一种良好的编程习惯。n default子句可以省略不用。l 例如,对于前面的输入成绩输出等级的问题,我们也可以使用 switch语句解决