1、4.3 运用选择结构描述问题求解过程练习题一、选择题一、选择题1语句 If x=1 那么 y=1,下列说法正确的是(C)。A、x=1 和 y=1 均为赋值语句 B、x=1 和 y=1 均为关系表达式C、x=1 为关系表达式,y=1 为赋值语句 D、x=1 为赋值语句,y=1 为关系表达2下列哪种基本控制结构,可是实现如果 ab 的判断(B )。A组合结构 B选择结构 C循环结构 D顺序结构3下列选项中,属于 Python 求函数长度的是(D )。Amix()Bprint()Cfloat()Dlen()4.若希望当 A 的值为奇数时,表达式的值为“真”,A 的值为偶数时,表达式的值为“假”,则以
2、下不能满足要求的表达式是(D )A.A%2=1 B.not(A%2=0)C.A%2!=0 D.A%25.走路可以减肥,平地甩手走 20 分钟内(含 20 分钟)消耗的能量为 6 卡每分钟,超过 20 分钟消耗的能量为 7.9 卡每分钟。走路的分钟数 43 分钟,输出共消耗的能量。(D )t=eval(input(“请输入 t 的值”)if t=20:n=6*telse:n=6*20+(t-20)*7.9print(“n=”,n)A258 卡 B.339.7 卡 C.439.7 卡 D.301.7 卡二、判断题:二、判断题:1.if(条件表达式)后面必须加冒号:()2单分支 If 条件语句,执行
3、过程中条件表达式为真,执行语句 A,为假则不执行语句 A ()3.当 if 分支语句中,语句 A 由多个语句构成时,严格遵守相同的缩进()4选择结构是算法的基本结构之一。()5.任何的程序设计中都有选择结构 ()6.在 PYTHON 程序设计语言中选择结构一般使用 IF 语句实现()。7if 双分支语句执行过程中条件表达式为真,执行语句 A,为假则执行 else 后面的语句 B()4.3运用选择结构描述问题求解过程 单选编写一个行李托运费用的程序:编写一个行李托运费用的程序:50(包含包含50)千克以内的每千克的费用是千克以内的每千克的费用是0.5元,大于元,大于50千克的超出部分每千克千克的
4、超出部分每千克0.8元,如何解决?元,如何解决?一、导入问题 单选设费用为设费用为n输入行李的重量输入行李的重量a如果如果50=a,那么那么 n=a*0.5;否则,否则,n=50*05+(a-50)*0.8,输出输出n结束结束1.分析问题、设计算法这个问题非常简单,我们可以直接写出如这个问题非常简单,我们可以直接写出如下算法:下算法:2.用流程图来描述YN通过流程图,我们可以得出若编写程序,需要用哪种基本控制结构?通过流程图,我们可以得出若编写程序,需要用哪种基本控制结构?开始开始输入行李输入行李a的值的值50=a?输出输出n结束结束n=a*0.5n=25+(a-50)*0.8if 语句的应用
5、语句的应用在程序设计中,主要使用条件语句在程序设计中,主要使用条件语句(if语句语句)来实来实现判断和选择。现判断和选择。单分支单分支if语句语句格式格式:if(条件表达式条件表达式):语句语句Aif(条件表达式条件表达式)后面加冒号后面加冒号“:”当语句当语句A是由多个语句构成的复合语句时,所有语句是由多个语句构成的复合语句时,所有语句严格遵循相同的缩进。严格遵循相同的缩进。执行过程:执行过程:单选练习a=int(input()b=int(input()x=a+bif ab:x=a-bprint(x)若从键盘上输入若从键盘上输入3和和4,那么,那么x的值是()的值是()A 3 B 5 C 7
6、 D 9 单选若用单分支若用单分支if语句如何解决托运行李的程序?语句如何解决托运行李的程序?算法如何修改?算法如何修改?算法:算法:输入行李重量输入行李重量a如果如果50=a,n=a*0.5如果如果50=a:n=a*0.5if 50b:else:单选若用双分支若用双分支if语句如何解决托运行李的程序?语句如何解决托运行李的程序?算法:算法:输入行李重量输入行李重量a如果如果50=a,n=a*0.5;否则否则,n=25+(a-50)*0.8,输输出出n结束结束程序:程序:a=eval(input()if 50=a:n=a*0.5else:n=25+(a-50)*0.8print(n)编写一个行
7、李托运费用的程序:编写一个行李托运费用的程序:50(包含包含50)千克以内的每千克以内的每千克的费用是千克的费用是0.5元,大于元,大于50千克小于等于千克小于等于100千克的超出千克的超出部分每千克部分每千克0.8元,大于元,大于100千克每千克千克每千克1.1元。如何解决?元。如何解决?增加难度用单、双分支用单、双分支if语句都可以解决吗?语句都可以解决吗?算法:算法:输入输入a如果如果50=a,n=a*0.5如果如果a50且且a100n=25+40+(a-100)*1.1程序:程序:a=eval(input()if 50=a:n=a*0.5if a50 and a100:n=25+40+
8、(a-100)*1.1print(n)可以把多可以把多 条条if语句语句合并在一合并在一起吗?起吗?if.elif.else 语句的应用语句的应用应用应用if条件语句可以快速地实现程序的分支选择,但当分支比条件语句可以快速地实现程序的分支选择,但当分支比较多时,用较多时,用if.elif.else语句来实现比较简便语句来实现比较简便格式格式:if(表达式表达式1):语句语句1elif(表达式表达式2):语句语句2 .elif(表达式表达式n):语句语句nelse:语句语句n+1if.elif.else 语句的应用语句的应用应用应用if条件语句可以快速地实现程序的分支选择,但当分支比条件语句可以
9、快速地实现程序的分支选择,但当分支比较多时,用较多时,用if.elif.else语句来实现比较简便语句来实现比较简便 单选用多分支用多分支if语句来解决行李问题语句来解决行李问题算法:算法:输入输入a如果如果50=a,那么那么n=a*0.5否则,若否则,若a50且且a=100,那么,那么,n=25+(a-50)*0.8否则,否则,n=25+40+(a-100)*1.1输出输出n结束结束 单选用多分支用多分支if语句来解决行李问题语句来解决行李问题增加难度程序:程序:a=eval(input()if a50 and an:else:n=25+40+(a-100)*1.1print(n)print(n)下面这个流程图可以用多分支下面这个流程图可以用多分支if语句来解决问题吗语句来解决问题吗?思考题:输入三个数输入三个数a,b,c,输出其中最大的那个数。请问,输出其中最大的那个数。请问解决此问题有多少种算法?请用用两种方法编程解决此问题有多少种算法?请用用两种方法编程解决此问题。解决此问题。作业:Thank you!
侵权处理QQ:3464097650--上传资料QQ:3464097650
【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。