Python基础之程序控制结构(一)
文章目录
程序基本结构
程序由三种基本结构组成:顺序结构、分支结构、循环结构。
一、顺序结构
顺序结构:程序按照线性顺序依次从上到下的执行的一种运行方式。

'''通过输入正方形的边长a,计算正方形的周长和面积。'''
a = eval(input("请输入方体的边长:"))
L = a * 4
S = a * a
print("该正方形的周长是:{}".format(L))
print("该正方形的面积是:{}".format(S))
-------------------------------------------------------
输出的结果:
请输入方体的边长:5
该正方形的周长是:20
该正方形的面积是:25
总结:顺序结构就是思考问题时,先把已知的内容设置好,即赋值;然后去求解位置的内容,将最后求解的内容输出。
二、分支结构
分支结构:程序根据条件判断结果而选择不同向前执行路劲的一种运行方式。
1、比较运算符

print("hello"=="hello") # True
print(12>15) # False
print(1!=2) # True
print(25=="25") # False
print(10<=12) # True
2、if条件语句—单分支结构
if <条件表达式>:
当条件为真时,执行语句块
……

if条件语句由if关键字构成,后面跟着一个条件和一个冒号。冒号的作用是告知接下来要创建一个新的语句块。这个条件实际上是一个比较表达式,它的值可以为真(True)或假(False),当表达式的结果为真时,执行if语句下面缩进的语句块;当表达式的结果为假时,跳过语句块,执行后面的程序。
注意:
(1) if条件后面必须要用英文输入法输入冒号。
(2) 满足if条件要执行的每一句都要向右缩进4个空格,或按1次Tab(制表)键。
(3) 同一层次的语句必须保证相同的缩进量。
'''用键盘输入年龄,判断是否满足18周岁,如果未满18周岁,
那么输出“你是未成年人”,如果满18周岁,那么输出“你已是成年人”。'''
age=int(input("请输入你的年龄:"))
if 0<age<18:
print("你是未成年人!")
if age>=18:
print("你已是成年人!")
----------------------------------------------------------------------
输出结果:
请输入你的年龄:15
你是未成年人!
请输入你的年龄:20
你已是成年人!
单分支结构的应用实例
编写一个“BMI指数”程序,实现:输入身高和体重,自动计算BIM值,输出体重类型(偏瘦、正常、过重、肥胖)。
BMI是指身体质量指数或体重指数,也叫做体质指数,是国际上衡量人体胖瘦程度以及是否健康的一个常用指标,通常是用体重,除以身高的平方来计算BMI值。即BMI=体重/身高*身高。

分析问题
“BMI指数”程序首先需要先知道输入的身高和体重的值,计算BMI值,然后判断BMI值的范围,最后输出体重类型。假设输入的身高,保存到变量height中,输入的体重,保存到变量weight中;计算BMI的值:bmi = weight/(height*height);根据bmi值范围输出体重类型。
编程步骤
(1) 输入身高(height)和体重(weight)
(2) 计算BMI的值:bmi = weight/(height*height)
(3) 根据中国BMI的标准值,判断bim值范围,输出体重类型。
流程图

编写代码
height=float(input("请输入您的身高(单位为米):"))
print("您的身高:",height,"米")
weight=float(input("请输入您的体重(单位为千克):"))
print("您的体重:",weight,"千克")
bmi = weight/(height*height)
if bmi<18.4:
print("您的体重偏瘦")
if 18.5<bmi<23.9:
print("您的体重正常,注意保持!")
if 24.0<bmi<27.9:
print("您的体重过重 ")
if bmi>=28.0:
print("您的体重肥胖!")
------------------------------------------------------------------------
输出结果:
请输入您的身高(单位为米):1.60
您的身高: 1.6 米
请输入您的体重(单位为千克):60.9
您的体重: 60.9 千克
您的体重正常,注意保持!
3、if…else语句—双分支结构
if <条件>:
当条件为真时,执行语句块1
else:
当条件为真时,执行语句块2

当表达式的结果为真时,执行语句块1;当表达式的结果为假时,执行语句块2。
'''用键盘输入年龄,判断是否满足18周岁,如果未满18周岁,
那么输出“你是未成年人”,否则输出“你已是成年人”。'''
age=int(input("请输入您的年龄:"))
if 0<age<18:
print("你是未成年人")
else:
print("你已是成年人")
---------------------------------------------------------------
输出结果:
请输入您的年龄:18
你已是成年人
'''判断一个数是奇数还是偶数'''
i=int(input("请输入1~100范围内的一个数:"))
if i%2==0:
print(i,"是偶数")
else:
print(i,"是奇数")
--------------------------------------------------------
输出结果
请输入1~100范围内的一个数:25
25 是奇数
请输入1~100范围内的一个数:10
10 是偶数
'''计算两个数相除'''
i=int(input("请输入被除数:"))
j=int(input("请输入除数:"))
if j==0:
print("输入除数不能为0")
else:
print("i/j=",i/j)
---------------------------------------------------
输出的结果:
请输入被除数:0
请输入除数:2
i/j= 0.0
请输入被除数:4
请输入除数:0
输入除数不能为0
请输入被除数:4
请输入除数:5
i/j= 0.8
双分支结构的应用实例
编写一个“购买火车票”程序,实现:输入身高,输出火车票类型。
根据火车票儿童身高收费最新标准,身高未达到1.2米的儿童,不需要购买火车票;身高达到1.2米但未达到1.5米的儿童,可以购买火车儿童票;身高达到1.5米及以上的儿童,需要购买火车全价票。
1.问题分析
“购买火车票”程序首先需要知道输入的身高,再判断是否符合火车票儿童身高收费标准,最后输出火车票类型。假设输入的身高为1.1米,保存到变量height中,判断输入身高是否符合火车票儿童身高收费标准,输出火车票的类型。
2.编程步骤
通过上面的分析,“购买火车票”的编程步骤如下:
(1) 输入身高(height)。
(2) 判断输入身高是否满足火车票儿童身高收费标准。
(3) 输出火车票的类型,如height<1.2时,输出“您无需购买火车票”;1.2<height<1.5时,输出“请购买火车儿童票”;height>=1.5时,输出“请购买火车全价票”。
3.流程图

4.编写代码
'''购买火车票'''
height= float(input("请输入你的身高(单位为米):"))
if 0<height<1.2:
print("您无需购买火车票!")
else:
if 1.2<= height<1.5:
print("请您购买火车儿童票!")
else:
print("请您购买火车全价票!")
------------------------------------------------------------------
输出结果:
请输入你的身高(单位为米):1.1
您无需购买火车票!
请输入你的身高(单位为米):1.3
请您购买火车儿童票!
请输入你的身高(单位为米):1.5
请您购买火车全价票!
4、逻辑运算符

x and y 表示 x 与 y,即 x 和 y 都为真时为真,否则为假;x or y 表示 x 或 y,即 x 和 y;有一个为真时就为真,否则为假(x 和 y 都为假时为假);not x 表示非 x,即 x 为真则结果为假,x 为假则结果为真。
print(True and True) # True
print(True and False) # False
print(False and False) # False
print(False or False) # False
print(True or False) # True
print(not True) # False
print(not False) # True
print(not not False) # False
print((4<=5) and (9<8)) # False
print(16>15) or (10<=8) # True
print(not (25=="25")) # True
'''身份验证'''
'''如果用户名和密码同时匹配时,输出身份验证成功,否则身份验证失败'''
username=input("请输入您的用户名:")
password=input("请输入您的密码:")
if username=="admin" and password=="abcdef":
print("身份验证成功")
else:
print("身份验证失败")
------------------------------------------------------------------------
输出的结果
请输入您的用户名:admin
请输入您的密码:abcdef
身份验证成功
请输入您的用户名:admin
请输入您的密码:123456
身份验证失败
5、if…elif…else语句—多分支结构
if <条件1>:
当条件1为真时,执行语句块1
elif<条件2>:
当条件2为真时,执行语句块2
……
elif<条件n>:
当条件n为真时,执行语句块n
else:
所有条件不成立时,执行的语句块n+1

一个if条件语句可以包含多个elif子句,仅当if条件为假(False)时,elif子句的语句块才能被执行;如果if和elif子句的条件都为假(False),else子句的语句块就会被执行。
'''购买火车票的程序'''
height= float(input("请输入你的身高(单位为米):"))
if height<1.2:
print("您无需购买火车票!")
elif 1.2<= height<1.5:
print("请您购买火车儿童票!")
else:
print("请您购买火车全价票!")
'''BMI指数程序'''
height=float(input("请输入您的身高(单位为米):"))
print("您的身高:",height,"米")
weight=float(input("请输入您的体重(单位为千克):"))
print("您的体重:",weight,"千克")
bmi = weight/(height*height)
if bmi<18.4:
print("您的体重偏瘦!")
elif bmi>18.5 and bmi<23.9:
print("您的体重属于正常,注意保持!")
elif bmi>24.0 and bmi<27.9:
print("您的体重过重")
else:
print("您的体重肥胖")
------------------------------------------------------
输出结果:
请输入您的身高(单位为米):1.6
您的身高: 1.6 米
请输入您的体重(单位为千克):65
您的体重: 65.0 千克
您的体重过重
多分支结构的应用实例
多分支结构的能解决生活中很多问题,如根据道路拥堵程度给出不同的路线建议,根据外界光线的明亮程度控制路灯的亮度等。其中根据商场打折程度选择购买商品是一个典型的多分支问题。
编写一个“商品打折”程序,实现:输入商品价格,输出购买该商品应付的金额。
背景:购物狂欢节商品打折活动,200元以内(含200元)不打折,200-500元(含500)之内打9折,500-1000元(含1000)之内打8折,超过1000元打五折。
1.问题分析
“商品打折”程序首先需要知道输入商品价格,,然后根据判断价格范围,计算折扣后的价格,最后输出购买该商品应付的金额。假设输入的商品价格为300元,保存到变量price中,输出打完折购买该商品应付的金额保存到cost变量中,并初始化cost=0。判断价格范围计算折扣价格cost=打折数price,最后输出结果。
2.编程步骤
(1)输入商品价格price,初始化输出变量cost=0
(2)判断价格范围,计算打完折后应付的金额cost=打折数price。
(3)输出购买该商品应付的金额cost。
3.流程图

4.编写代码
price=int(input("请输入商品价格:"))
cost=0
if 0<price<=200 :
cost=price
print("您购买该商品应付金额为",cost,"元")
elif price>200 and price<=500 :
cost=0.9*price
print("您购买该商品应付金额为",cost,"元")
elif price>500 and price<=1000 :
cost=0.7*price
print("您购买该商品应付金额为",cost,"元")
else :
cost=0.5*price
print("您购买该商品应付金额为",cost,"元")
--------------------------------------------------------
输出结果:
请输入商品价格:200
您购买该商品应付金额为 200 元
请输入商品价格:300
您购买该商品应付金额为 270.0 元
请输入商品价格:1200
您购买该商品应付金额为 600.0 元
本文介绍了Python的基础分支结构,包括if条件语句、if...else语句、if...elif...else语句的使用和应用实例,涉及BMI指数计算、购买火车票标准和商品打折活动的逻辑判断。

被折叠的 条评论
为什么被折叠?



