if分支
一、单分支结构
# if 表达式:
# 语句块
# 后续语句
# 执行流程:如果表达式结果为真,则执行语句块。否则,直接执行后续语句
二、双分支结构
# 双分支语句 # if 表达式: # 语句块a # else: # 语句块b # 后续语句 # 执行流程:如果表达式成立,执行语句块a,否则执行语句b
三、多分支结构
if 表达式: 语句块1 elif 表达式: 语句块2 elif 表达式2: 语句块3 else: 语句块4 后续语句
练习:
1.从键盘输入一个值,求他的绝对值
a = int(input("请输入一个数:")) if a < 0: print(-a) else: print(a) 2.假设用户名为admin,密码为123ABC,从控制台输入用户名和密码,如果和已知用户名和密码匹配上的话则验证成功,否则验证失败
name = input("请输入用户名:") password = input("请输入密码:") if name == 'admin' and password == '123abc': print("验证成功") else: print("验证失败") 注意判等符合是==,不是= 3.计算三角形的面积。输入三角形的三条边。 要判断输入的值能否构成三角形
a = int(input("请输入三角形的a边长")) b = int(input("请输入三角形的b边长")) c = int(input("请输入三角形的c边长")) l = (a + b + c) / 2 if (a + b > c) or (a + c > b) or (a + c > b): s = (l*(l-a) * l*(l-b) * l*(l-c)) ** (1/2) print("%.0f" % s) else: print("不是三角形")
4.百分制成绩转换为等级制成绩。要求: 如果输⼊入的成绩在90分以上(含90分)输出A;80分-90分(不不含90分)输出 B;70分-80 分(不不含80分)输出C;60分-70分(不不含70分)输出D;60分以下输出E。
score = int(input("请输入分数:")) if score >=90: print("成绩为A") elif score >= 80 and score < 90: print("成绩为B") elif score >=70 and score < 80: print("成绩为C") else: print("成绩为D")
5.任给两个实数,判断这两个实数作为坐标所在的象限。 例例如给2.5 -5.6 显示在第4象限! 提示: 考虑在坐标轴上和原点的情况
a = float(input("请输入第一个数:")) b = float(input("请输入第一个数:")) if a == 0 and b == 0: print("在原点") elif a == 0 and b != 0: print("在y轴") elif a != 0 and b == 0: print("在x轴") elif a > 0: if b > 0: print("在第1限象") else: print("在第4限象") elif a < 0: if b > 0: print("在第2限象") else: print("在第3限象")
6.写⼀一个四则计算器器,运⾏行行界⾯面如下: (1)不不要求连续做,每次只做⼀一种运算 功能菜单: ------------------------------------------ [1] 加法 [2] 减法 [3] 乘法 [4] 除法 [0] 退出 ------------------------------------------ 请输⼊入您的选择(0—4):1 请输⼊入第⼀一个数:5 请输⼊入第⼆二个数:3 3 + 5 = 8
print("功能菜单:") print("-----------------------------") print(''' [1] 加法 [2] 减法 [3] 乘法 [4] 除法 [0] 退出''') print("-----------------------------") print() choice = int(input("请输入您的选择(0-4):")) if choice == 0: exit()
else: a = int(input("请输入第一个数:")) b = int(input("请输入第一个数:")) if choice == 1: print("%s+%s=%s" % (a, b, a + b)) elif choice == 2: print("%s-%s=%s" % (a, b, a - b)) elif choice == 3: print("%s*%s=%s" % (a, b, a * b)) elif choice == 4: print("%s/%s=%s" % (a, b, a / b))
7..已知有分段函数:
从键盘上输⼊入x的值,输出f(x)的值
x = int(input("请输入x的值:")) if x > 1: print(3 * x - 5) elif x >= -1 and x <= 1: print(x + 2) else: print(5 * x + 3)