python分支结构
if分支
一、单分支结构
# if 表达式:
# 语句块
# 后续语句
# 执行流程:如果表达式结果为真,则执行语句块。否则,直接执行后续语句
二、双分支结构
# 双分支语句# if 表达式:# 语句块a# else:# 语句块b# 后续语句# 执行流程:如果表达式成立,执行语句块a,否则执行语句b
三、多分支结构
if 表达式: 语句块1elif 表达式: 语句块2elif 表达式2: 语句块3else: 语句块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) / 2if (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)