第三章 算法的程序实现 练习题 浙教版(2019)高中信息技术必修1(Word版,含答案)

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

第三章 算法的程序实现 练习题 浙教版(2019)高中信息技术必修1(Word版,含答案)

资源简介

第三章 算法的程序实现 练习题 浙教版(2019)高中信息技术必修1
一、选择题
1.在Python语言中,能正确表示条件“x小于-6,或大于等于2”的表达式是( )
A.x>-6 and x<=2 B.x>-6 or x<=2 C.x<-6 or x>=2 D.x<-6 and x>=2
2.Python中整型数据的表示方法是( )
A.int B.float C.str D.class
3.有如下 python 程序段,运行该程序段后, 列表a 中的值可能是( )
import random
a = []
for i in range(6):
a.append(random.randint(1,5)*2+i%2)
for i in range(1,5):
j = i; k = a[j]
while a[j-1]0:
a[j] = a[j-1] ; j=j-1
a[j] = k
A.11,8,7,6,5,5 B.8,6,5,5,3,8 C.9,6,7,8,8,11 D.11,11,8,2,2,11
4.Python表达式 -3 ** 2 + 7 % 13 // 4 ** 0.5 * 4 的值是( )
A.-9.0 B.-5.0 C.3.0 D.21.0
5.下图是一段Python程序,该程序运行后的结果是( )
1 color=["yellow","white","red","blue","green","pink"]
2 print(color[1:4:2])
A.[“yellow”,“red”] B.[“white”,“blue”]
C.[“yellow”,“blue”,“white”] D.[“white”,“green”,“red”]
6.有如下Python程序段:
s="Python"
ans=""
for i in range(len(s)):
c=s[i]
if "a"<=c<="z":
if i%2==0:
c=chr((ord(c)–ord("a")–i)%26+ord("a"))
else:
c=c.upper( ) #x.upper( )将字符串x中的大写字母转换成小写字母
ans+=c
print(ans)
执行该程序段后,输出的内容是( )
A.PYwHtN B.YrHkN C.PaTIOt D.PYrHkN
7.某二分查找算法的 python 程序段如下, 运行该段代码后, 输出的结果不可能是( )
import random
a = [10,20,30,40,50,60,70,80]
key = random.choice(a); i,j = 0,len(a)-1 ; s = ""
while i<=j:
m = (i+j)//2
if key == a[m]:
s = s+"M"; break
elif key < a[m]:
j = m-1; s = s+"L"
else:
i = m+1; s = s+"R"
print(s)
A.LLM B.LRM C.RRRM D.RRLM
8.有如下Python程序代码:
s="ABCDEF";head=0;tail=0
que=[""]*100
for i in range(len(s)):
if i%2==0:
que[tail]=s[i]
else:
que[tail]=s[len(s)-i]
tail=tail+1
for i in range(len(s)):
print(que[head],end="")
head=head+1
以上程序运行后,打印出列表的情况是:( )
A.ABCDEF B.FEDCBA C.ACEFDB D.AFCDEB
二、填空题
9.根据下面的while语句的运算,计算结果是______。
10.在Python语言中常用的逻辑运算符有“and”、“or”、“not”,执行not 1 and 1的结果是_______。(提示输入字母时只能输入小写字母)
11.Python算术运算中求余数运算符用_______表示。
12.某Python程序段如下:
w = input("请输入一个单词(全部小写):")
w = ____________ + w[1:]
print(w)
要想将单词 w 的首字母大写,划线处应填写的内容是___________
13.小明利用Python语言编写了一个程序,其中用到 for x in range(1,9,3)语句,在不改变x值的情况下,循环次数应为______。
三、判断题
14.关系运算符运算结果一定是True或者False。( )
15.利用计算机编程的方式进行问题求解时,通常需要经过分析问题、设计方案、编程调试和解决问题等环节。( )
16.Python是解释型高级语言。( )
17.Python语言中使用数组表示批量数据。( )
18.下列程序段中,赋值语句 s=s+i 被重复执行了 3 次。( )
s=0
for i in range(3,10,2):
s=s+i
四、操作题
19.某商场开业不久,老板为研判商场运营情况,调取了最近一个月的商品销售情况,如图如示。老板想知道哪些商品卖的多,哪些商品产生的利润多,同时为表彰先进,需统计每个员工销售商品数量,并做成图表,现老板高薪聘请你为运营总监,要求你设计python程序,完成上述功能。
pandas as pd
import matplotlib. pyplot as plt
pd. set_option('display. unicode. ambiguous_as_wide',True) #处理列数据无法对齐的情况
pd. set_option('display. unicode. east_asian_width',True)
plt. rcParams['font. sans-serif'] = 'simhei' #图表显示中文字体
df=pd. read_csv("sale. csv",encoding="gbk") #导入待处理CSV 文件
#修改第1行显示器的销售人员为“毕春艳”
_______
#计算出每一笔业业务利润的情况
df["利润"]=(df["单品售价"]-df["单品进价"])*df["销售数量"]
#按"商品名称"统计本月"销售数量","利润"的总和
df1=________
#筛选出本月赚钱较多的前 3 种商品
print( )
#同理,统计同种商品的月销量,代码略
#统计本月每一位销售人员的商品销售数量
df2=df. groupby("销售人员",as_index=False)["销售数量"]. sum()
#筛选出本月销售数量>25 或销售数量<10 的销售人员
print( )
#以垂直柱形图的形式统计显示所有销售员的业绩
x=__________
y=df2["销售数量"]
plt. figure(figsize=(8,4))
plt. title("商场运营情况分析")
plt. bar(x,y,label="销售人员业绩图",color="r")
plt. legend( )
plt. show()
五、简答题
20.编写一个程序,它将找到所有这些数字,可被7整除,但不是5的倍数,2000年至3200年(包括在内)。得到的数字应按逗号分隔的顺序打印在一行上。
提示:考虑使用range(#begin,#end)
21.read、readline和readlines之间的区别?
试卷第1页,共3页
试卷第1页,共3页
参考答案:
1.C
2.A
3.D
4.C
5.B
6.D
7.D
8.D
9.120
10.False
11.%
12.chr(ord(w[0])-32)或w[0].upper()或等价的表达式
13.3
14.正确
15.正确
16.正确
17.错误
18.错误
19. df.at[0,"销售人员"]="毕春艳"或等同答案 df.groupby("商品名称")[["销售数量","利润"]].sum() 或等同答案 df1.sort_values("利润",ascending=False).head(3) 或等同答案 df2[(df2["销售数量"]>25)|(df2["销售数量"]<=10)] 或等同答案 df2["销售人员"]或 df2.销售人员 或等同答案
20.
l=[]
for i in range(2000,3201):
if (i%7==0)and (i%5!=0):
l.append(str(i))
print (','.join(1))
21.read 读取整个文件;readline 读取下一行,使用生成器方法;readlines 读取整个文件到一个迭代器以供我们遍历。
答案第1页,共2页
答案第1页,共2页

展开更多......

收起↑

资源预览