3.3 简单算法及其程序实现 第3课时(分层作业,含答案)

资源下载
  1. 二一教育资源

3.3 简单算法及其程序实现 第3课时(分层作业,含答案)

资源简介

3.3 简单算法及其程序实现 第3课时(分层作业)
【夯实基础】
在Python中,下列程序运行后得到的是( )
sum=0
for x in range(2,100,2):
sum=sum+x
print(sum)
A.2至100的和 B.2至99奇数的和 C.2至100偶数的和 D.2至98偶数的和
程序如下
a=int(input())
b=int(input ())
c=a+b
print(a,’+’,b,’=’,c)
通过键盘分别输入23和3,运算结果是( )
A.26
B.23+3=26
C.’23’+”3”=26
D.24+4=28
下面if语句统计满足“性别 (gender) 为男、职称(rank) 为副教授、年龄(age)小于40岁”条件的人数,正确的语句为( )。
A.if(gender=="男" or age<40 and rank=="副教授"): n+=1
B.if(gender=="男" and age<40 and rank=="副教授"): n+=1
C.if(gender=="男" and age<40 or rank=="副教授"): n+=1
D.if(gender=="男" or age<40 or rank=="副教授"): n+=1
程序的三种基本结构为( )
A.顺序结构、树形结构和选择结构
B.网状结构、顺序结构和选择结构
C.顺序结构、选择结构和循环结构
D.网状结构、循环结构和树形结构
购买地铁车票:乘1-4站3元/人;5-9站4元/人;9站以上5元/人。根据输入的站数N,输出应付款M,如需将算法补充完整,最适合的选项是( )
A.N>9 B.N<=9
C.5<=N<=9 D.N>=5 and N<=9
关于分支结构的叙述,正确的是( )。
A.有一个入口,三个出口 B.有一个入口,一个出口
C.有一个入口,两个出口 D.有两个入口,一个出口
以下程序的输出结果是( )
a=1
if a>0:
a=a+1
else:
a=a-1
print(a)
A.0 B.1 C.2 D.3
某算法的部分流程图如图所示,输入a的值为26,若用Python语言描述,则下列正确的是()
A. B.
C. D.
【巩固提升】
有如下Python程序,程序执行,输入数据k之后输出的结果不正确的是( )
A.k=8输出:[8,4] B.k=9输出:[8,9,4,9]
C.k=10输出:[8,10,9,4,9,10] D.k=13输出:[8,10,9,13,4,9,13]
2. 阅读下列程序,写出运行结果。
程序运行后,输入:8
运行结果是:_____________
3. 以下程序段运行结果是( )
s = 0
for i in range(11):
if i % 2==0:
s = s + i
else:
s = s - i
print(s)
A.55 B.-5 C.5 D.-55
有下列Python程序段:
a=[3,7,8,2,19,10,16,12]
n=len(a)
for i in range(2):
k=i
for j in range(i+1,n):
if a[k]k=j
if i!=k:
a[i],a[k]=a[k],a[i]
下列说法不正确的是( )
A.程序段执行后,列表a中的元素为[19,16,8,2,3,10,7,12]
B.代码“for i in range(2):”等价于“for i in range(0,2):”
C.程序段执行后,变量k的值为7
D.将代码“if i!=k:”修改为“if k>i:”,不会影响程序的运行结果
【拓展应用】
编写一个程序,它将找到所有这些数字,可被7整除,但不是5的倍数,2000年至3200年(包括在内)。得到的数字应按逗号分隔的顺序打印在一行上。
提示:考虑使用range(#begin,#end)
根据输入的18位身份证,输出身份证中包含的出生日期信息。
sfz = input("请输入您的身份证号码(18位):")
if _____①_______:
print("您的身份证号码长度不对!")
else:
year = int(sfz[6:10])
_______②__________
day = int(sfz[12:14])
print("你的出生于",year,"年",month,"月",day,"日。")
请完善程序代码(1)__________________ (2)_________________________
参考答案:
【夯实基础】
1.D【详解】本题考查的是Python循环语句。range(起始值,结束值,步长)注意:结束值不包含;步长可省略,默认为1。range(2,100,2)返回的是2至98偶数。故该程序运行后得到的是2至98偶数的和。选项D正确。
2.B【详解】本题考查Python程序执行a=23,b=3,c=23+3=26,最后输出23+3=26,故本题选B选项。
3 . B【详解】本题主要考查if条件分支。题目中的条件都是与的关系,所以要用and连接,故本题选B选项。
4 . C【详解】本题考查程序基本结构相关内容。程序的三种基本结构:1、顺序结构勾,程序中各个操作按照在源代码中的排列顺序,自上而下,依次执行;2、选择结构,根据某个特定的条件进进行判断后,选择其中一支执行;3、循环结构,在程序中需要反复执行某个或某些操作,直到条件成立或不成立时才停止循环。故本题答案是C选项。
5 . B【详解】本题考查条件语句。根据题目要求,购买地铁车票:乘1-4站3元/人;5-9站4元/人;9站以上5元/人。故N<=9满足5-9站4元/人,最适合,因此选项B正确。
B【详解】本题考查的是程序控制结构。程序有三种控制结构:顺序、分支、循环,不管哪种结构,只有一个入口和一个出口。故本题应选B。
C【详解】本题考查的是Python选择语句。a=1,满足a>0,执行a=a+1=2,故程序的输出结果是2,选项C正确。
A【详解】:本题考查的是流程图及Python语言。由流程图可知,循环的条件是a!=b,故排除BD,b=b-3这个语句不管a是否大于b都要执行,故排除C。本题应选A。
【巩固提升】
C【详解】本题考查的是Python循环语句。阅读程序可知,保留列表L中不大于输入的数,并输出。k=10时,列表保留的是[8,10,9,4,9],故本题应选C。
3【详解】本题考查的是Python循环语句。第一行,输入n=8,并转化为整型。第二二行,cnt初始值为0,第三行,进入循环,循环条件为n>l、n初始值为8,满足循环条件。第1次循环,cnt=1+1=1,因为8%2==0所以执行第6行,n=8/2=4,满足循环条件;第2次循环,cnt=1+1=2,4%2==0成立,执行第第6行,n=4/2=2,满足循环条件;第3次循环,cnt=2+1=3,2%2==0成立,执行第6行,n=2/1-1,不满足循环条件牛,跳出循环,执行第10行,输出cnt,即3
C【详解】本题考查的是Python循环及选择语句。range(11)是生成[0,1,2,3,4,5,6,7,8,9,10]的列表,结合if语句可知,当i为偶数用加,为奇数时则用减。故s=0-1+2-3+4-5+6-7+8-9+10=5。故本本题应选C。
D【详解】本题考查的是Python循环语句。本题是选择排序的变式,只比较两趟最大的值放在最左边,故程序段执行后,列表a中的元素为[19,16,8,2,3,10,7,12],选项A说法正确;range (2),默认的起始值为0,故选项B说法 正确;第二大数字是16,在列表的第6位,故程序段执行后,变量k的 I值为6,选项C说法错误;从左到右进行比较,如果找到比i位置大的数,则进行交换,故产生交换的条件也可可以是k>i,选项D说法正确。
【拓展应用】
【答案】
l=[]
for i in range (2000,3201):
if (i%7==0) and (i%5!=0) :
l.append (str (i) )
print (','.join (1) )
【详解】本题考查的编写程序。程序的编写难度较大,使用range()定义 i的取值范围,然后利用if判断语句可被7整除,但不是5的倍数,最后利用join函数打印出结果即可。
len(sfz)!=18 month=int(sfz[10:12])
【详解】本题考查的是python选择语句。len()是获取字符串长度,由print("您白的身份证号码长度不对!")语句可知第一空应为:len(sfz)!=18;月份在身份证的第11、12位,python中字符串的下标是从0开始,故第二空应为:month=int(sfz[10:12])。

展开更多......

收起↑

资源预览