终身会员
搜索
    上传资料 赚现金

    浙江省杭州市2022-2023学年高一技术下学期期末考试试题(Word版附解析)

    立即下载
    加入资料篮
    浙江省杭州市2022-2023学年高一技术下学期期末考试试题(Word版附解析)第1页
    浙江省杭州市2022-2023学年高一技术下学期期末考试试题(Word版附解析)第2页
    浙江省杭州市2022-2023学年高一技术下学期期末考试试题(Word版附解析)第3页
    还剩6页未读, 继续阅读
    下载需要15学贝 1学贝=0.1元
    使用下载券免费下载
    加入资料篮
    立即下载

    浙江省杭州市2022-2023学年高一技术下学期期末考试试题(Word版附解析)

    展开

    这是一份浙江省杭州市2022-2023学年高一技术下学期期末考试试题(Word版附解析),共9页。试卷主要包含了选择题,非选择题等内容,欢迎下载使用。
    2023届高一年级技术学科期末试卷第一部分信息技术(共50分)一、选择题(本大题共12小题,每小题2分,共24分。每小题列出的四个备选项中只有一个是符合题目要求的,不选、错选、多选均不得分)1. 关于python程序设计语言,下列说法不正确的是(    )A. python源文件以***.py为扩展名B. python的默认交互提示符是:>>>C. python只能在文件模式中编写代码D. python具有丰富和强大的模块【答案】C【解析】【详解】本题主要考查Python程序设计语言。python源文件以***.py为扩展名,python的默认交互提示符是:>>>python能在文件模式中编写代码,也能在交互模式中编写代码,python具有丰富和强大的模块,故本题选C选项。2. 下列可以作为python变量名(    )A 'a1' B. 6keyC. False D. i_f【答案】D【解析】【详解】本题主要考查Python变量的命名。变量的命名规则有:只能以字母或下划线开头,不能包含特殊符号,不能是关键字。故i_f可以作为python变量名,故本题选D选项。3. 已知变量x=5,执行语句x*=x+3,变量x的值为(    )A. 8 B. 13C. 28 D. 40【答案】D【解析】【详解】本题主要考查Python表达式的运算。语句x*=x+3等价于x=x*(x+3)=5*(5+3)=40,故本题选D选项。4. 二进制数110110转换成十六进制数是(    A. 66 B. D2 C. D8 D. 36【答案】D【解析】【详解】本题主要考查进制数的转换。二进制转换成十六进制的方法是,取四合一法,将四位二进制按权相加,得到的数就是一位十六进制数,然后按顺序排列。因此二进制数110110转换成十六进制数是36,故本题选D选项。5. 语句print( 'abd' > 'abc' and 20%6 = = 10%4 )的结果为(    )A. False B. True C. 3 D. 编译错误【答案】B【解析】【详解】本题主要考查Python表达式的运算。 表达式 'abd' > 'abc' 值为True,表达式20%6 = = 10%4 值为True,逻辑运算符and两边值均为真时值才为真,否则值为假,故表达式 'abd' > 'abc' and 20%6 = = 10%4值为True,故本题选B选项。6. 某算法的部分流程图如图所示,执行这部分流程后,变量C的值是(   A. 2 B. 3 C. 4 D. 5【答案】B【解析】【详解】本题考查的是流程图识读。初始值:m=18n=7c=118>7成立,c=c+1=2m=m-n=18-7=1111>7成立,c=c+1=3m=m-n=11-7=44>7不成立,循环结束。c=3,故本题应选B7. 已知list=["World"," tourism","Ninghai","open","tour"],则list[2][2]的返回值为(   A. "o" B. "u" C. "i" D. "n"【答案】D【解析】【详解】本题考查的是列表中元素的编号。元素编号从左到右编号由0依次增大,故list[2][2]是指的"Ninghai"中的n,故选项D正确。8. 已知str="3.1415926535898",str[4:6]+str[-6:-4]的返回值为(   )A. "415535" B. "159535" C. "1553" D. "'4153"【答案】C【解析】【详解】本题考查的是字符串中的字符编号。从左到右是由0依次加1,从右到左是由-1依次减1。切片操作的方法是:consequence[start_index: end_index: step]end_index其实是你第一个不想要获取的对象的索引。str[4:6]得到的是15str[-6:-4]得到的是53。故选项C正确。9. 已知字典dict1={1:2, 2:(1,2), (1,2):'b', 'b':'b1','b1':'b2' },要得到字典中的值'b',下列方法可行的是(   A. dict1[(1,2)] B. dict1{'b'} C. dict1[3] D. dict1['b1']【答案】A【解析】【详解】本题主要考查Python字典数据类型。由字典dict1={1:2, 2:(1,2), (1,2):'b', 'b':'b1','b1':'b2' },可知'b'的键是(1,2),故要得到字典中的值'b',可以通过语句dict1[(1,2)],故本题选A选项。10. 小王编写了出租车收费的python程序,代码如下:s1=float(input('请输入行驶路程(公里)'))if s1<=3:    f=10elif s1<=10:    f=10+2.5*(s1-3)else:    f=27.5+3.5*(s1-10)print(f)要测试所有分支程序代码是否正确,以下测试数据中,最恰当的一组是(   A. 3,8 B. -1,5,12C. 1,6,20 D. 3,12,20【答案】C【解析】【详解】本题主要考查Python条件分支结构。分析代码可知,程序采用条件分支结构,第一个条件是s1<=3,第二个条件是3<s1<=10,第三个条件是s1>10,故最恰当的一组测试数据是1620,故本题选C选项。11. 有如下Python程序段: a = [2,1,3,4,5] c = 0 for i in range(2,len(a)):     if a[i-2] + a[i-1] == a[i]:    c = c + 1 print(c) 该程序段运行后,最后输出的内容是(    A. 1 B. 2 C. 3 D. 4【答案】B【解析】【详解】本题主要考查Python程序的执行。分析程序可知,变量c用于统计列表a中前两项之和等于第三项的个数,a[0]+a[1]=a[2]a[1]+a[2]=a[3],故c的值为2,故本题选B选项。12. 小林编写一段文件读写操作代码,文件如图,代码段如下:file=open('ceshi.txt','w')file.write("python is a programming language.")file.close( )file=open('ceshi.txt','r')print(file.read( ))该代码段运行后,输出的结果为(   A. IA Distributed System Based on Python.B. python is a programming language.C IA Distributed System Based on Python. python is a programming language.D. 程序编译错误,不会输出结果【答案】B【解析】【详解】本题主要考查Python文件读写操作。首先打开ceshi.txt文件进行写操作,写入python is a programming language.会覆盖之前的内容,故该代码段运行后,输出的结果为python is a programming language.,故本题选B选项。二、非选择题(本大题共3小题,其中第13小题6分,第14小题7分,第15小题6分,第16小题7分共26分。)13. 广场上有许多(有数百人)小朋友在玩分组游戏,当他们分成三人一组时,发现最后多出两个;当他们分成五人一组时,发现最后多出三个;当他们分成七人一组时,发现最后多出两个。编写程序求出这些小朋友的可能人数。实现上述功能的程序如下,请在程序划线处填入合适的代码。________a=[ ]for i in range(100,1000):     if_____________:          a.append(i)          total + = 1print("这群小朋友总的人数有:")for  j in range(len(a)):     print(____end='')print('')print('可能情况数为:',total,'')划线处处应该填入的语句为:                               划线处处应该填入的语句为:                               划线处处应该填入语句为:                               【答案】    ①. total=0    ②. i%3 == 2 and i%5 == 3 and i%7 == 2    ③. a[j]【解析】【分析】【详解】本题主要考查Python程序的执行与调试。变量total用来统计有多少种情况,初始值为0,第一空填total=0当他们分成三人一组时,发现最后多出两个;当他们分成五人一组时,发现最后多出三个;当他们分成七人一组时,发现最后多出两个,即if判断条件为i%3 == 2 and i%5 == 3 and i%7 == 2,满足if条件时,将该值加到列表a中,故第二空填i%3 == 2 and i%5 == 3 and i%7 == 2最后通过for循环输出所有可能的数,用变量j控制,故第三空填a[j]14. 小王编写了字符串缩写程序,实现如下功能:1.输入一串由英文字母和数字组成的字符串,2.如果字符串有连续字符构成的升序段(后面字符的ASCII值比前面的字符的ASCII值大1),则把升序段缩写成由第一个字符加上和最后一个字符组成的新字符段,3.例如:字符串为abcdf12345becomexy,则缩写成a-df1-5becomex-y程序运行时,输入一串字符,输出缩写的字符串,程序运行效果如下图所示:   实现上述功能的程序如下,请在程序划线处填入合适的代码。s=input("请输入字符串s:")_______flag = Falseresult=" "for i in range( 0 , k-1): if ___________________ : result=result+s[i]+"-" flag = True elif ord(s[i]) ! = ord(s[i+1])-1: result=result+s[i]          _____result=result + s[i+1]print("缩写后的字符串为:",result)划线处处应该填入的语句为:                               划线处处应该填入的语句为:                               划线处处应该填入的语句为:                               【答案】    ①. k=len(s)    ②. ord(s[i])==ord(s[i+1])-1 and flag==False ord(s[i])==ord(s[i+1])-1 and not flag ord(s[i])+1==ord(s[i+1]) and flag==False ord(s[i])+1==ord(s[i+1]) and not flag    ③. flag = False【解析】【分析】【详解】本题主要考查Python程序的执行与调试。第一空将输入的字符串s的长度赋给变量k,故填k=len(s)②flag用来标记是否有连续字符构成的升序段,第二空判断相邻位置后面字符的ASCII值是否比前面的字符的ASCII值大1flagFalse,故填ord(s[i])==ord(s[i+1])-1 and flag==False ord(s[i])==ord(s[i+1])-1 and not flag ord(s[i])+1==ord(s[i+1]) and flag==False ord(s[i])+1==ord(s[i+1]) and not flag如果不满足if判断条件,则需要将该字符加到变量result中,同时赋值flagFalse,表示当前没有连续字符构成的升序段,需要继续判断寻找,故填flag = False15. Python程序编写一个找最大值的程序,程序功能:输入一组数字串(所有数字均大于0,相互间用逗号分隔),输出其中最大的数值。实现该功能的程序代码段如下,该程序运行的部分界面如图所示,请在程序划线处填入合适的代码。s=input"请输入一组数字串"max=-1i=0 #每一个数字起始位置j=0while j<lens      if ch=="":tmp=ints[i:j]if tmp>max:max=tmp            tmp=ints[ij]if tmp>maxmax=tmpprintmax划线处处应该填入的语句为:_______划线处处应该填入的语句为:_______划线处处应该填入的语句为:_______【答案】    ①. ch=s[j]    ②. i=j+1    ③. j=j+1【解析】【详解】本题主要考查Python程序的综合应用。此处是初始化ch的值,由下面代码可知,ch是取字符串s索引j处的字符,故填ch=s[j]如果tmp>max,则更新max=tmp,同时更新i的值为j+1,继续取下一个数字进行判断,故填i=j+1此处j递增1,继续循环,故填j=j+116. 一个整数nn>=11 and n<1000)从左向右和从右向左读其结果相同,且是素数,则称n为回文素数,例如133020331是回文素数。下列Python程序段用于找出1000以内的所有回文素数。(提示:如果n不能被内的任何一个整数整除,则n是素数)import mathdef hwsnum:m=strnumif       :return Truereturn Falsedef sushunum:      for i in range2intmath.sqrtnum+1)):if num%i==0      return flagn=11while n<1000if       printnn=n+1上述程序段中划线处可选语句为:________划线处处应该填入的语句为:______划线处处应该填入的语句为:______划线处处应该填入的语句为:______划线处处应该填入的语句为:______【答案】    ①. m==m[::-1]    ②. flag=True    ③. flag=False    ④. sushu(n) and hws(n)【解析】【详解】本题主要考查Python程序的综合应用。本题用于找出1000以内所有的回文素数,主程序段采用枚举法,用于判断是否为回文,即该正序与逆序相同,则应填入m==m[::-1]sushunum)函数用于判断num是否为素数,用flag标记,flag初值为True如果num%i==0,说明num不是素数,赋值flagFalse,故填flag=False此处使用sushu(n) hws(n)函数分别用于判断n是否是素数和回文数,故填sushu(n) and hws(n) 
     

    相关试卷

    浙江省杭州市2023-2024学年高三上学期期中技术试题(Word版附解析):

    这是一份浙江省杭州市2023-2024学年高三上学期期中技术试题(Word版附解析),共13页。

    浙江省台州市2022-2023学年高一技术下学期期末试题(Word版附解析):

    这是一份浙江省台州市2022-2023学年高一技术下学期期末试题(Word版附解析),共5页。试卷主要包含了0C. “98”D. “请输入等内容,欢迎下载使用。

    浙江省台州市2022-2023学年高二技术下学期期末考试试题(Word版附解析):

    这是一份浙江省台州市2022-2023学年高二技术下学期期末考试试题(Word版附解析),共13页。试卷主要包含了 有如下pythn程序段等内容,欢迎下载使用。

    欢迎来到教习网
    • 900万优选资源,让备课更轻松
    • 600万优选试题,支持自由组卷
    • 高质量可编辑,日均更新2000+
    • 百万教师选择,专业更值得信赖
    微信扫码注册
    qrcode
    二维码已过期
    刷新

    微信扫码,快速注册

    手机号注册
    手机号码

    手机号格式错误

    手机验证码 获取验证码

    手机验证码已经成功发送,5分钟内有效

    设置密码

    6-20个字符,数字、字母或符号

    注册即视为同意教习网「注册协议」「隐私条款」
    QQ注册
    手机号注册
    微信注册

    注册成功

    返回
    顶部
    Baidu
    map