《Python程序编写入门》(高教版)安徽省(分类招生和对口招生)计算机类 高频考点冲刺卷(五)

标签:
精品解析文字版答案
| 2份
| 19页
| 309人阅读
| 3人下载

内容正文:

编写说明:本冲刺卷严格依据安徽省计算机类高考考纲编写,依托《Python程序编写入门》(高教版),聚焦高三考生冲刺需求,助力高效提分。内容上深度覆盖考纲掌握、理解层级考点,既系统梳理构建知识框架,又强化应用能力训练;同时结合近五年高考真题,精准把握高频考点、命题趋势与题型特点,确保贴合高考方向。 安徽省计算机类 《Python程序编写入门》高教版 高频考点冲刺卷(五)解析版 时间:60分钟 总分:100分 班级 姓名 学号 成绩 一、单选题 (本大题共15小题,每题2分,共30分) 1.下列对Python程序设计语言描述错误的是( )。 A. Python是一种面向对象的程序设计语言 B. Python是一种静态的程序设计语言 C. Python是一种动态的程序设计语言 D. Python是一种解释型的程序设计语言 答案:B 解析:Python是动态类型语言,不是静态类型语言(如C++、Java需要提前声明变量类型)。 2.下列变量名命名正确的是( )。 A. print! B. is C. 9else D. break_pass 答案:D 解析:变量名规则:不能是关键字(B:is、C:9else数字开头不合法),A含特殊字符!,Dbreak_pass含下划线合法。 3. Python表达式 12//7-2+5*8/4%5/2 的值为( )。 A. 1 B. -1 C. -1.0 D. 1.0 答案:C 解析: 运算顺序:5*8=40 → 40/4=10.0 → 10.0%5=0.0 → 0.0/2=0.0;12//7=1 → 1-2=-1 → -1+0.0=-1.0。 4. type(int("123",8))语句的运行结果是( )。 A. <class 'str'> B. <class 'int'> C. <class 'list'> D. <class 'tuple'> 答案:B 解析:int("123",8)将八进制"123"转十进制83,type(83)返回<class 'int'>。 5. 下列赋值语句执行不正确的是( )。 A. x=y=2 B. x,y=2 C. x=2,3,2 D. x=(y=2) 答案:D 解析:x=(y=2)语法错误,应写为x=y=2。 6. 执行 x="abc2023abc"; y=x.replace("abc",""")后的x,y的值分别为( )。 A. x="2023abc" y="abc2023abc" B. x="abc2023abc" y="2023" C. x="abc2023" y="abc2023abc" D. x="2023" y="abc2023abc" 答案:B 解析:replace返回新字符串,不改变原字符串x,y为替换后结果"2023"。 7. 语句 eval("-8+6/5")的执行结果是( )。 A. -9.2 B. -8+6/5 C. "-8+6/5" D. -6.8 答案:D 解析:eval计算表达式:-8+6/5 = -8+1.2 = -6.8。 8. 字符串 s="a b\tc\\", 则 print(len(s))的值为( )。 A. 9 B. 8 C. 7 D. 6 答案:D 解析:转义字符:"a b\tc\\" → 'a'、' '、'b'、'\t'、'c'、'\\'共6个字符。 9. 下列关于random模块中的函数功能描述错误的是( )。 A. random.shuffle(x)用于将一个列表中的元素打乱,即将列表内的元素随机排列 B. random.uniform(a,b)用于生成一个指定范围内的整数 C. random.choice(sequence)从序列中获取一个随机元素 D. random.sample(sequence, k)从指定序列中随机获取指定长度的片段并随机排列,sample函数不会修改原有序列 答案:B 解析:random.uniform(a,b)生成浮点数,不是整数;整数用random.randint(a,b)。 10. 下列语句中,不能创建一个字典的是( )。 A. dict1={20:23} B. dict2={} C. dict3=dict2={(1,2):3} D. dict4={[1,2]:3} 答案:D 解析:字典的键必须可哈希(不可变类型),列表[1,2]可变,不能作为键。 11. 下列数据类型中,不支持分片操作的是( )。 A. 字符串 B. 列表 C. 字典 D. 元组 答案:C 解析:字典是无序的键值对集合,不支持切片(slice)操作。 12. 下面代码的执行结果是( )。 w,j=9.0,99.0 print(complex(w,j)) A. (9+99j) B. (9.0+99j) C. (9.0+99.0j) D. (9.0+0j) 答案:A 解析:complex(9.0,99.0) → (9+99j) 13. 下面代码的输出结果是( )。 w= 0x101+0o10 print(w) A. 65 B. 265 C. 256 D. 257 答案:B 解析:0x101=257(十六进制),0o10=8(八进制),257+8=265。 14. 下列选项不正确的是( )。 s="ab&cd" A. s.split("&")结果为['ab', 'cd'] B. str(list(s))==s 的结果为False C. 语句list(s).remove("1")的值为:'b' D. 语句list(s).pop(1)的值为:'b' 答案:C 解析:list(s).remove("1")错误:原列表不含"1",且remove返回None,不是'b'。 15. 使用什么函数,可以打开一个文件( )。 A. open() B. close() C. read() D. write() 答案:A 解析:打开文件用open(),关闭用close(),读写用read()/write()。 二、填空题(共5小题,每题2分,共10分) 1.IDLE是Python集成开发环境,其中D的英文全称是__________。 答案:Development 解析:IDLE = Integrated Development and Learning Environment。 2.表达式divmod(-6.5,3)的结果是__________。 答案:(-3.0, 2.5) 解析:divmod(a,b)返回(a//b, a%b),-6.5//3=-3.0,余数=-6.5 - (-3.0*3)=2.5。 3.已知x=[1,2]那么连续执行y=x和y.append(3)语句之后,x的值为__________。 答案:[1,2,3] 解析:y=x使y和x指向同一列表,y.append(3)修改共享列表,x也变化。 4.语句print("1","2","3",sep="*",end="=6")的输出结果为__________。 答案:1*2*3=6 解析:sep="*"设置分隔符为*,end="=6"设置结尾字符串。 5.Python类的构造方法是__________,它在生成对象时被调用,可以用来进行一些初始化的操作。 答案:__init__( ) 解析:构造方法在创建对象时自动调用,用于初始化对象属性。 三、程序分析题(共3小题,每题6分,共18分) 1. 分析下列程序,输出结果为__________________。 class Test: s=15 def print_num(self): s=16 self.s=s*2 print(s,self.s) test=Test() test.print_num() print(test.s,Test.s) 答案: 16 32 32 1 解析: 类变量Test.s=15 方法内局部变量s=16,self.s=32(实例变量) 打印局部s=16和self.s=32 最后打印实例变量test.s=32和类变量Test.s=15 2. 分析下列程序,输出结果为________。 s=0 def myadd(x,y): global s s+=x+y return x+y print(myadd(1,2),end="*") print(myadd(3,4),end="*") print(s) 答案:3*7*10 解析: myadd(1,2)返回3,全局s=0+3=3,打印3* myadd(3,4)返回7,全局s=3+7=10,打印7* 最后打印s=10 3. 分析下列程序,输出结果为________。 s={1:2,2:3,3:4} print(s.pop(1)) s[5]=6 del s[2] print(s) 答案: 2 {3: 4, 5: 6} 解析: s.pop(1)删除键1并返回值2 添加{5:6},删除键2 剩余{3:4, 5:6} 四、程序设计题(共42分) 1. 程序编写程序,利用自定义函数,输出 m~n 之间的所有的素数,素数之间以逗号分隔。(其中m,n是由用户输入的正整数,m大于等于2)。(8分) 答案: def su(a,b): for i in range(a,b+1): flag=True for j in range(2,i): if i%j==0: flag=False break if flag: print(i,end=',') m,n=eval(input("请输入两个正整数:")) su(m,n) 解析: 函数定义:su(a,b) 函数用于判断并输出 a 到 b 之间的素数 素数判断逻辑: 外层循环遍历 a 到 b 之间的每个数 i 内层循环检查 i 是否能被 2 到 i-1 之间的数整除 如果能被整除,设置 flag=False 并跳出内层循环 如果 flag 仍为 True,说明 i 是素数,输出该数 输入处理:使用 eval(input()) 同时输入两个正整数 m 和 n 输出格式:使用 end=',' 使输出的素数之间用逗号分隔 2. 程序编写程序,输出以下图形(注意:每行星号之间需要加入一个空格)。(8分) * * * * * * * * * * * * * * * * * * * * * * * * 答案: for i in range(1,5): print("* "*(11-2*i)) 解析: 行数控制:range(1,5) 控制输出4行 每行星号数:使用公式 11-2*i 计算每行的星号数量 第1行(i=1):11-2×1=9个星号 第2行(i=2):11-2×2=7个星号 第3行(i=3):11-2×3=5个星号 第4行(i=4):11-2×4=3个星号 输出格式:"* " 包含星号和空格,实现题目要求的间距 3. 程序编写,利用递归函数求出 1!+3!+5!+7!+……+n!的值。(12分) 答案: def jie(n): if n==1: return 1 else: return n*jie(n-1) n=int(input("请输入一个奇数n:")) s=0 for i in range(1,n+1,2): s+=jie(i) print(s) 解析: 递归阶乘函数: 基准情况:n==1 时返回 1 递归情况:n*jie(n-1) 计算 n 的阶乘 主程序逻辑: 输入奇数 n 使用 range(1, n+1, 2) 生成所有奇数(步长为2) 累加每个奇数的阶乘到变量 s 输出最终结果 4. GUI编程:请设计一个进制转换程序,该程序功能是将十进制整数转换成其他进制数。 图中展示了一个GUI界面,界面上有三个按钮,分别用于选择二进制、八进制和十六进制转换。有两个输入框用于输入和显示转换结果。(14分) import tkinter as tk win=tk.Tk() ######################################################################## ######################################################################## win.①______('进制转换') v=tk.IntVar() r1=tk.Radiobutton(win,text='二进制',variable=v,value=2) r1.grid(row=0,column=0) r2=tk.Radiobutton(win,text='八进制',variable=v,value=8) r2.grid(row=0,column=1) r3=tk.Radiobutton(win,text='十六进制',variable=v,value=16) r3.grid(row=0,column=2) lb1=tk.Label(win,text='转换前') lb1.grid(row=1,column=0) lb2=tk.Label(win,text='转换后') lb2.grid(row=2,column=0) ent1=tk.Entry(win) ent1.grid(row=1,column=1,columnspan=2) ent2=tk.Entry(win) ent2.grid(row=2,column=1,columnspan=2) tk.Button(win,text='确定',command=zh).grid(row=3,column=0) tk.Button(win,text='清除',command=qc).grid(row=3,column=1) tk.Button(win,text='退出',command=win.②______).grid(row=3,column=2) win.③________( ) (1) 程序填空。(每空 2 分) ①__________、②________、③________ 答案:① title ② destroy/quit ③ mainloop( ) 解析: ① title(设置窗口标题) ② destroy 或 quit(退出窗口) ③ mainloop(启动事件循环) (2) 请设计程序,进行进制转换。(6 分) 答案: num=eval(ent1.get()) if v.get()==2: jz=bin(num)[2:] if v.get()==8: jz = oct(num)[2:] if v.get()==16: jz = hex(num)[2:] ent2.delete(0,'end') ent2.insert(0,jz) 解析:使用内置函数bin( )、oct( )、hex( )将十进制转为对应进制数并使用切片将前缀切除 (3) 请设计程序,将输入框中的内容删除。(2 分) 答案: v.set(0) ent1.delete(0,'end') ent2.delete(0, 'end') 解析:将动态变量v的值置为0,再将输入框ent1、ent2清空。 原创精品资源学科网独家享有版权,侵权必究! 学科网(北京)股份有限公司 学科网(北京)股份有限公司 学科网(北京)股份有限公司 $ 编写说明:本冲刺卷严格依据安徽省计算机类高考考纲编写,依托《Python程序编写入门》(高教版),聚焦高三考生冲刺需求,助力高效提分。内容上深度覆盖考纲掌握、理解层级考点,既系统梳理构建知识框架,又强化应用能力训练;同时结合近五年高考真题,精准把握高频考点、命题趋势与题型特点,确保贴合高考方向。 安徽省计算机类 《Python程序编写入门》高教版 高频考点冲刺卷(五)原卷版 时间:60分钟 总分:100分 班级 姓名 学号 成绩 一、单选题 (本大题共15小题,每题2分,共30分) 1.下列对Python程序设计语言描述错误的是( )。 A. Python是一种面向对象的程序设计语言 B. Python是一种静态的程序设计语言 C. Python是一种动态的程序设计语言 D. Python是一种解释型的程序设计语言 2.下列变量名命名正确的是( )。 A. print! B. is C. 9else D. break_pass 3. Python表达式 12//7-2+5*8/4%5/2 的值为( )。 A. 1 B. -1 C. -1.0 D. 1.0 4. type(int("123",8))语句的运行结果是( )。 A. <class 'str'> B. <class 'int'> C. <class 'list'> D. <class 'tuple'> 5. 下列赋值语句执行不正确的是( )。 A. x=y=2 B. x,y=2 C. x=2,3,2 D. x=(y=2) 6. 执行 x="abc2023abc"; y=x.replace("abc",""")后的x,y的值分别为( )。 A. x="2023abc" y="abc2023abc" B. x="abc2023abc" y="2023" C. x="abc2023" y="abc2023abc" D. x="2023" y="abc2023abc" 7. 语句 eval("-8+6/5")的执行结果是( )。 A. -9.2 B. -8+6/5 C. "-8+6/5" D. -6.8 8. 字符串 s="a b\tc\\", 则 print(len(s))的值为( )。 A. 9 B. 8 C. 7 D. 6 9. 下列关于random模块中的函数功能描述错误的是( )。 A. random.shuffle(x)用于将一个列表中的元素打乱,即将列表内的元素随机排列 B. random.uniform(a,b)用于生成一个指定范围内的整数 C. random.choice(sequence)从序列中获取一个随机元素 D. random.sample(sequence, k)从指定序列中随机获取指定长度的片段并随机排列,sample函数不会修改原有序列 10. 下列语句中,不能创建一个字典的是( )。 A. dict1={20:23} B. dict2={} C. dict3=dict2={(1,2):3} D. dict4={[1,2]:3} 11. 下列数据类型中,不支持分片操作的是( )。 A. 字符串 B. 列表 C. 字典 D. 元组 12. 下面代码的执行结果是( )。 w,j=9.0,99.0 print(complex(w,j)) A. (9+99j) B. (9.0+99j) C. (9.0+99.0j) D. (9.0+0j) 13. 下面代码的输出结果是( )。 w= 0x101+0o10 print(w) A. 65 B. 265 C. 256 D. 257 14. 下列选项不正确的是( )。 s="ab&cd" A. s.split("&")结果为['ab', 'cd'] B. str(list(s))==s 的结果为False C. 语句list(s).remove("1")的值为:'b' D. 语句list(s).pop(1)的值为:'b' 15. 使用什么函数,可以打开一个文件( )。 A. open() B. close() C. read() D. write() 二、填空题(共5小题,每题2分,共10分) 1.IDLE是Python集成开发环境,其中D的英文全称是__________。 2.表达式divmod(-6.5,3)的结果是__________。 3.已知x=[1,2]那么连续执行y=x和y.append(3)语句之后,x的值为__________。 4.语句print("1","2","3",sep="*",end="=6")的输出结果为__________。 5.Python类的构造方法是__________,它在生成对象时被调用,可以用来进行一些初始化的操作。 三、程序分析题(共3小题,每题6分,共18分) 1. 分析下列程序,输出结果为__________________。 class Test: s=15 def print_num(self): s=16 self.s=s*2 print(s,self.s) test=Test() test.print_num() print(test.s,Test.s) 2. 分析下列程序,输出结果为________。 s=0 def myadd(x,y): global s s+=x+y return x+y print(myadd(1,2),end="*") print(myadd(3,4),end="*") print(s) 3. 分析下列程序,输出结果为________。 s={1:2,2:3,3:4} print(s.pop(1)) s[5]=6 del s[2] print(s) 四、程序设计题(共42分) 1. 程序编写程序,利用自定义函数,输出 m~n 之间的所有的素数,素数之间以逗号分隔。(其中m,n是由用户输入的正整数,m大于等于2)。(8分) 2. 程序编写程序,输出以下图形(注意:每行星号之间需要加入一个空格)。(8分) * * * * * * * * * * * * * * * * * * * * * * * * 3. 程序编写,利用递归函数求出 1!+3!+5!+7!+……+n!的值。(12分) 4. GUI编程:请设计一个进制转换程序,该程序功能是将十进制整数转换成其他进制数。 图中展示了一个GUI界面,界面上有三个按钮,分别用于选择二进制、八进制和十六进制转换。有两个输入框用于输入和显示转换结果。(14分) import tkinter as tk win=tk.Tk() ######################################################################## ######################################################################## win.①______('进制转换') v=tk.IntVar() r1=tk.Radiobutton(win,text='二进制',variable=v,value=2) r1.grid(row=0,column=0) r2=tk.Radiobutton(win,text='八进制',variable=v,value=8) r2.grid(row=0,column=1) r3=tk.Radiobutton(win,text='十六进制',variable=v,value=16) r3.grid(row=0,column=2) lb1=tk.Label(win,text='转换前') lb1.grid(row=1,column=0) lb2=tk.Label(win,text='转换后') lb2.grid(row=2,column=0) ent1=tk.Entry(win) ent1.grid(row=1,column=1,columnspan=2) ent2=tk.Entry(win) ent2.grid(row=2,column=1,columnspan=2) tk.Button(win,text='确定',command=zh).grid(row=3,column=0) tk.Button(win,text='清除',command=qc).grid(row=3,column=1) tk.Button(win,text='退出',command=win.②______).grid(row=3,column=2) win.③________( ) (1) 程序填空。(每空 2 分) ①__________、②________、③________ (2) 请设计程序,进行进制转换。(6 分) (3) 请设计程序,将输入框中的内容删除。(2 分) 原创精品资源学科网独家享有版权,侵权必究! 学科网(北京)股份有限公司 学科网(北京)股份有限公司 学科网(北京)股份有限公司 $

资源预览图

《Python程序编写入门》(高教版)安徽省(分类招生和对口招生)计算机类 高频考点冲刺卷(五)-第1页
1
《Python程序编写入门》(高教版)安徽省(分类招生和对口招生)计算机类 高频考点冲刺卷(五)-第2页
2
《Python程序编写入门》(高教版)安徽省(分类招生和对口招生)计算机类 高频考点冲刺卷(五)-第3页
3

由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。