资源简介 第四章 程序设计基础 综合练习 粤教版(2019)信息技术必修一一、选择题1.有如下Python程序段:import randomnum=[]for i in range(0,6):n=random.randint(1,10)num.append(n)for i in range(1,6):if i%2==1 and num[i]>num[i-1] :num[i],num[i-1]=num[i-1],num[i]else:num[i]=num[i]-1print(num)运行后列表中的值可能是( )A.11,1,7,5,4,3 B.5,3,6,4,0,2 C.4,1,7,4,4,0 D.9,8,1,1,5,42.哥德巴赫猜想是近代三大数学难题之一,即任一大于2的偶数,都可表示成两个素数之和。采用Python验证100以内哥德巴赫猜想的正确性,则划线处的代码为:( )import mathdef isprime(num):i=2while i<=int (math.sqrt(num)):if num % i==0:return Falsei+=1return Truen=6while n<=100:for j in range(3,int (n/2)):if ____________________:print (n,'=',j, '+',n-j)n+=2A.isprime(j) and isprime(n-j) B.isprime (j) and isprime(j+1)C.isprime(n) and isprime(j) D.isprime(j) and isprime(j-1)3.在Python中,以下赋值语句格式不正确的是( )A.x,y=y,z B.x,y=1,2 C.x=y=30 D.x+y=z4.执行下列程序后,屏幕上输出的结果是( )for i in range(5,1): print(i,end=” ”)A.5 4 3 2 1 B.4 3 2 1 C.1 2 3 4 5 D.没有结果5.下面的Python程序段运行后的输出结果是( )x=24if x%2=1:print(x,"是奇数。")else:print(x,"是偶数。")A.24是奇数。 B.x是偶数。 C.x是奇数。 D.24是偶数。6.我国古代数学家张丘建在《算经》一书中提出了如下的数学问题:鸡翁一,值钱五;鸡母一,值钱三;鸡雏三,值钱一。百钱买百鸡,问翁、母、雏各几何?用Python编写程序如下:for x in range(0,21):for y in range(0,34):方框内代码可以为:( )A.B.C.D.7.某超市用13位数字标识商品信息,其中8~12位是表示商品名的代码,用字符串变量s存储商品的信息码(例如:s="9787100109796",商品名代码是“10979”),下列Python表达式中能取出商品名代码的是( )A.s[-6:-1] B.s[7:11] C.s[8:12] D.s[7:-2]8.下列函数中,能实现将数字转变为字母功能的函数是( )A.len() B.chr() C.ord() D.print()二、填空题9.有10个数据34,22,101,8,14,88,24,17,54,7依次存放在列表list中,有如下Python程序,当程序运行结束时,输出的值是: _____list= [34,22, 101,8,14,88,24,17,54,7]num=list[0]for i in range(1,10):if list[i]num=list[i]print(num)10..在Python中,(13%3)**2的结果是_______。11.Python表达式5%2+9//4的运算结果是__________。12.使用python编写游戏时,需要导入________模块。13.Python算术运算中求余数运算符用_______表示。三、判断题14.若有a=[1,2,3,4,5],则表达式a[2]+a[4]的值为6。( )15.常见的顺序结构语句有输入语句、输出语句和赋值语句。( )16.循环结构表示程序中各步操作按出现的先后顺序执行。( )17.Python程序语言中的“=”和数学上的“=”是一回事。( )18.Python语言的表达式中,“%”是取模算术运算符。( )四、操作题19.小王收集“2020年全省各市、县城乡居民收入情况”数据,保存在D盘下“2020年城乡居民收入情况.xlsx”Excel文档,如图-1所示。现在利用pandas模块进行数据处理。计算各县市区的“城镇居民收入”(城镇居民收入=工资性收入+经营净收入+财产净收入+转移净收入)根据“城镇居民收入”值对各市县区进行排位(值大在前,值相同位次相同)根据全省十一城市的“城镇居民收入”画出图表,如图-2所示。(1)以下Python程序实现上述功能,请在划线处填入合适的代码。import pandas as pdimport matplotlib.pyplot as pltdf = pd.read_excel( )n = len(df)sj = 0for i in df.columns[4:]: sj = _________df["城镇居民收入"] = sj#按“城镇居民收入”为关键字降序排序df = df.sort_values("城镇居民收入",ascending = False)df = df. reset_index(drop=True) #重置索引df["排位"] = 1for i in range(1, n): if df.at[i,"城镇居民收入"] == df.at[i - 1,"城镇居民收入"]: df.at[i,"排位"] = __________ else: df.at[i,"排位"] = i + 1df1 = round(df.groupby("市区", as_index = True).mean(),1) #按“市区”为关键字分组求平均值并保留1位小数,as_index = True表示将“市区”作为索引plt.figure(figsize=(10,6))plt.rcParams['font.family']=['SimHei'] #显示汉字#绘制水平柱形图(条形图)plt.title('2020年全省各市城镇居民收入情况',fontsize = 20) #设置图表标题文字plt.show()(2)方框处代码应为:_______A.plt.barh(df1.市区,df1.城镇居民收入)B.plt.barh(df1.index,df1.城镇居民收入)C.plt.plot(df1.市区,df1.城镇居民收入)D.plt.plot(df1.index,df1.城镇居民收入)五、简答题20.编写程序。一辆动车即将穿越隧道,已知隧道全长a米,动车车长为300米,动车的速度为b米/秒。请编写一个程序,根据用户输入的数值,计算并输出动车完全通过隧道需要花费的时间。要求:屏幕提示用户输入隧道长度和动车的行驶速度(输入时大于0 的浮点数),输出火车完全通过隧道需要花费的时间。 提示:时间=(隧道长度+动车长度) 动车速度,单位为秒。21.苹果和虫子问题。你买了一箱n个苹果,很不幸的是买完时箱子里混进了一条虫子。虫子每x小时能吃掉一个苹果,假设虫子在吃完一个苹果之前不会吃另一个,那么经过y小时你还有多少个完整的苹果?输入:输入仅三行,包括n,x和y(均为整数)。输出:输出也仅一行,剩下的苹果个数样例输入:1049样例输出:7试卷第1页,共3页试卷第1页,共3页参考答案:1.C2.A3.D4.D5.D6.ABC7.A8.B9.710.111.312.Pygame13.%14.错误15.正确16.错误17.错误18.正确19. "2020年城乡居民收入情况.xlsx" sj + df[i] df.at[i - 1,"排位"] B20.a=float(input("请输入隧道长度(米):"))b=float(input("请输入动车速度(米/秒):"))if a>0 and b>0: c=(300+a)/bprint("火车完全通过隧道需要的时间为",c,"秒")21.n=int(input())x=int(input())y=int(input())print(int(n-y/x))答案第1页,共2页答案第1页,共2页 展开更多...... 收起↑ 资源预览