上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
3.2.3 分支语句嵌套
当有多个条件需要满足并且条件之间有递进关系时,可以使用分支语句的嵌套。其中,if子句、elif子句以及else子句中都可以嵌套if语句或者if-elif-else子句。
书写格式:嵌套的if语句要求以锯齿形缩进格式书写,从而分清层次关系。
例如,我国的婚姻法规定,男性22岁为合法结婚年龄,女性20岁为合法结婚年龄。因此如果要判断一个人是否到了合法结婚年龄,首先需要使用双分支结构判断性别,再用递进的双分支结构判断年龄,并输出判断结果。
代码如下:
【例3-7】编写程序,从键盘输入用户名和密码,要求先判断用户名再判断密码,如果用户名不正确,则直接提示用户名输入有误;如果用户名正确,则进一步判断密码,并给出判断结果的提示。
分析:因为要求先判断用户名再判断密码,所以本程序的一种做法是使用if语句的嵌套,外层if语句用于判断用户名,用户名正确时进入内层if语句判断密码并给出判断结果,如果用户名不正确,则直接给出错误提示。
代码如下:
【例3-8】编写程序,开发一个小型计算器,从键盘输入两个数字和一个运算符,根据运算符(+、-、*、/)进行相应的数学运算,如果不是这4种运算符,则给出错误提示。
分析:因为需要根据4种运算符号的类别执行相应的运算,所以使用多分支if-elif-else语句;对于除法运算而言,由于除数不能为0,因此需要使用嵌套的if语句来判断除数是否为0,并执行相应的运算。
代码如下: