第2单元 编程计算 2024-2025学年高中信息技术教科版(2019) 必修1

2024-08-15
| 12页
| 56人阅读
| 0人下载

内容正文:

第2单元 编程计算 一、选择题 1.以下不属于编制计算机程序解决问题的必备步骤的是(   ) A.列出算式 B.编写程序 C.调试运行 D.设计算法 2.things=["香蕉","苹果","橙子","猕猴桃"],若想输出things元素“橙子”,正确的Python表达式为(   ) A.print(things[-2]) B.print(things[3]) C.print(things["橙子"]) D.print(things[-1]) 3.有如下Python程序段,列表data为[[14,2],[4,0],[24,4],[44,-1],[34,3]],data[i][1]为data[i][0]元素的后继元素地址,head为1时开始读取列表,则可得4 14 24 34 44的有序序列。下面代码是在这个有序序列基础上,插入一个[5,55]区间的任意数x,使得输出的序列保持有序。 head=1;q=head while q!=-1:     if x>data[q][0]:         p=q         q=①     else:         break data.append(② ) data[p][1]=len(data)-1 q=head while q!=-1:     print(data[q][0],end=' ')     q=data[q][1] 则①②处正确代码为(   ) A.①data[q][1]  ②[x,data[p][1]] B.①data[q][1]  ②[x,p] C.①data[q][0]  ②[x,data[p][1]] D.①data[q][0]  ②[x,p] 4.已知闰年的判断条件是:年份能被4整除但不能被100整除,或者能被400整除。下列VB表达式中,能判断某年份(year)是否是闰年的是(    ) A.year Mod 4 <> 0 And year Mod 100 = 0 Or year Mod 400 = 0 B.year Mod 4 = 0 And year Mod 100 <> 0 Or year Mod 400 = 0 C.year Mod 4 = 0 And year Mod 100 <> 0 Or year\400 = 0 D.year \ 4 = 0 And year \ 100 <> 0 Or year \ 400 = 0 5.下列Python程序,运行的结果是(   ) a=1 if(a==4) or (a<6): print("你好!",a) else: print("退出!") A.你好! B.退出 C.你好!1 D.你好!6 6.在Python中,下面代码的运行结果是(    ) x=365 g=x%10        #%为求余的意思 s=x//10%10     # //为整除的意思 b=x//100 sum=g*100+s*10+b #sum英文是求和的意思 print(sum) A.365 B.14 C.563 D.41 7.下列Python程序段的运行结果是(    ) a=123 b=100 if   a>b: a=a+b else: b=a-b c=a+b print(c) A.323 B.223 C.77 D.-23 8.下列属于Python的Web应用框架的是(   ) A.Flask B.pandas C.plotly D.numpy 9.有两个VB程序段,如下所示: 已知程序段中①②两处内容相同,数组元素a(1)到a(10)的值依次为:6,43,21,78,33,16,80,45,12,90,执行“程序段1”后,数组元素a(1)~a(10)的值依次为80,78,90,45 ,43,33,21,16,12,6,则下列说法正确的是() A.①和②处的填空为7 B.两程序段的比较次数不一样,交换次数一样 C.执行完程序段2后,数据6移动到了a(10) D.两段程序的得到的运行结果相同 10.Python中,分支语句使用的关键字是(   ) A.if B.while C.for D.def 11.有如下程序段: p=input ("请输入明文字符(由字母组成):") e="" for i in p:     if "a" <=i<="z":         e+="L"         i=chr (ord (i) -32)     else:         e+="U"     s=ord (i)-ord ("A")     e+=str(s//5)+str (s%5) print (e) 若输入p的值为“Ad”,则程序执行后输出的结果是(    ) A.U00L03 B.U00L70 C.L00U03 D.UOL3 12.计算两数的最小公倍数算法如下: a = int(input("请输入第一个数:")) b = int(input("请输入第二个数:")) k = 2 Lcd = 1 while a != 1 or b != 1:     if a % k == 0 or b % k == 0:         if :             a = a // k         if :            b = b // k           else:          print("最小公倍数为:", Lcd) 方框中的代码由以下四部分组成: ①Lcd = Lcd * k    ②k = k + 1    ③b % k == 0    ④a % k == 0 则(1)(2)(3)(4)处代码顺序依次为(   ) A.③④②① B.③④①② C.④③②① D.④③①② 13.下列适合用计算机程序解决问题的选项是(    ) A.整理收藏夹 B.用电子邮件发送会议通知 C.求100以内奇数的和 D.更新QQ空间 14.下列Python表达式中,值为True的是(   ) A.9/3**2!=1 B."12"=="12345"[1:3] C.abs(-4.3)>9//2 D."ac" in "abcaab" 15.选择结构程序应用的分支语句是(   ) A.if B.for C.while D.print 16.有如下Python程序: import random a=[0,0,0,0,0,0] for i in range(6):   a[i]=random.randint(1,10) for i in range(0,6):   if i%2==0 and a[i]%2==0:     a[i]//=2   else:       a[i]+=1 print(a) 执行程序后,列表a各元素可能是(   ) A.1,5,1,11,2,11 B.7,2,8,10,5,9 C.6,9,3,7,8,12 D.3,9,0,8,2,7 二、填空题 17.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) 该程序段运行后,最后输出的内容是 。 18.写出运行结果。 s=0 while s<=30:     s=s+10 print(s) 结果: 19.在数字逻辑中,逻辑与运算通常用符号 表示。 20.阅读下列程序,写出运行结果 sum=0 for k in range(1,11):     if k%2==0: sum=sum+k print(sum) 程序运行后输出结果是: 。 21.有以下程序段: sum=0 for i in range(1,10):     if i%2==0:      sum=sum+i print(sum) 程序运行后,其输出结果为( )。 三、判断题 22.在Python 3中,使用内置函数input()接收用户输入时,不论用户输入什么格式的内容,一律按字符串进行返回。( ) 23.CPU的厂商比较出名的有Intel公司和AMD公司    ( ) 24.在Python3.x语言中,input()函数的返回值类型是字符串。( ) 四、操作题 25.某阅卷系统可以根据学生输入的选择题答案进行对照并判分。每道选择题2分,题型为单选、多选,判分规则如下:单选题和标准答案一致得全部分数,错选或不选不得多选题和标准答案一致得2分,漏选给1分,错选或不选不得分。程序输入及输出结示例如下: 请输入你的答案,并以逗号结尾:A,B,A,B,C,ACD,AB,AD, 最终得分为:7 你的平均分为:0.88 (1)若标准答案为["A","C","A","D","B","ACD","ABD","AC"],当输入的答案是"A,C,A,B,C,ACD,ABC,A,"时,得分为 。 (2)编写Python程序如下,在划线处填入合适的代码。 def check(x,y):    #x为输入的选择题答案,y为标准答案     f=0;t=0     for i in x:         if  ① :             t=0             break    #break表示中断循环         else:             t+=1     if t !=0:         if t==len(y):             f=2     else:         ②     return f bzda=["A","C","A","D","B","ACD","ABD","AC"] s=input("请输入你的答案,并以逗号结尾:") tmp="";n=0;sum=0 for i in s:     if i!=",":         tmp=tmp+i     else:         sum=sum+③         n=n+1         tmp="" print("最终得分为:",sum) print("你的平均分为:",round(④ ))#结果保留两位小数 试卷第1页,共3页 试卷第1页,共3页 学科网(北京)股份有限公司 参考答案: 1.A 【详解】本题考查计算机编程解决问题相关内容。使用计算机解决问题的一般步骤为:分析问题、设计算法、编写程序、调试运行。故本题答案是A选项。 2.A 【详解】本题考查Python基础。 things是列表,列表中单个元素的访问可以通过索引号来完成,索引号的编号有两种方式:从左到右递增,从0开始编号;从右到左递减,从-1开始编号。题目中输出橙子,从右到左递减,在列表的第二位,故索引为-2。故正确答案为:选项A。 3.A 【详解】本题考查Python基础。 ①处为循环查找插入的位置,所以q要不断地更新为下一个元素的地址,即为data[q][1];②处为插入元素到列表data,由p=q,可知新插入元素后继地址为 data[p][1]。故正确答案为:选项A。 4.B 【详解】本题主要考查VB条件判断。年份能被4整除但不能被100整除(可使用逻辑运算符and连接),表示为year Mod 4 = 0 And year Mod 100 <>0,或者能被400整除(使用逻辑运算符Or连接),表示为Or year Mod 400 = 0,故能判断某年份(year)是否是闰年的是year Mod 4 = 0 And year Mod 100 <>0 Or year Mod 400 = 0,故本题选B选项。 5.C 【详解】本题考查的是Python选择语句。a=1,满足(a==4)or(a<6)条件,故执行print("你好!",a),运行的结果是你好!1。选项C正确。 【点睛】 6.C 【详解】本题主要考查Python基本运算。%为求余, //为整除,程序实现了提取了变量x各位上的数值,然后倒置形成新数,因此C选项正确。 【点睛】 7.A 【详解】本题主要考查Python程序的执行。a=123,b=100,满足a>b,执行a=a+b=223,再执行c=a+b=223+100=323,故本题选A选项。 8.A 【详解】本题考查Python库。pandas是Python的数据分析库,plotly是Python的可视化库,numpy是Python的科学库。故答案为:A。 9.A 【详解】本题考查冒泡排序。根据题干,执行“程序段1”后,数组元素a(1)~a(10)的值依次为80,78,90,45 ,43,33,21,16,12,6,可知a(10)-a(4)实现排序,故整个排序执行了七趟。根据程序段1,双重for循环的内循环for j=1 to 10-i,这是一个下沉的排序,对整个程序段总共要执行七趟,那么i的变化是1-7,故外循环填入7。选项A正确。两个程序段都执行七趟,比较次数一样。执行完程序段2后,数据6移动到了a(8)。故本题选A。 10.A 【详解】本题考查的是Python分支语句。if是分支语句使用的关键字;while、for是循环语句使用的关键字;def是自定义函数的关键字。故选A。 11.A 【详解】本题考查的是Python循环语句。阅读程序可知,依次对输入的字符进行加密,如果字符是小写字母,则转换为大写字母,并转换为密文格式:L加上与字母A的差值对5取整和对5取余;如果字符是大写字母,则转换为密文格式:U加上与字母A的差值对5取整和对5取余。若输入p的值为“Ad”,A加密后为:U00,d加密后为:L03。故选项A正确。 12.D 【详解】本题考查的是Python循环语句。分析程序可知,采用的是分解质因数法来求最小公倍数。如果k是a的质因数,求下一个质因数前,则要将执行a // k;如果k是b的质因数,求下一个质因数前,则要将执行b // k;相同的质因数只取1个,各自独有的质因数全部乘上,得出的值就是最小公倍数,故(1)(2)(3)依次为④a % k == 0③b % k == 0①Lcd = Lcd * k,逐个验证是否为a、b质因数,故(4)处代码为 ②k = k + 1。选项D正确。 13.C 【详解】本题考查的是计算机编程相关知识。在浏览器中,已经自带整理收藏夹,不需要编程;现有的QQ等邮箱就可以发送邮件,不需要编程;QQ里有更新QQ空间的功能,不需要编程。故本题应选C。 14.C 【详解】本题考查Python运算符、表达式相关知识。A选项,3**2结果为9,9/9结果为1,1!=1结果为False;B选项,"12345"[1:3]结果为"23","12"=="23",结果为False;C选项,abs(-4.3)值为4.3,9//2结果为4,4.3>4,结果为True。D选项,"ac"不是"abcaab"的子串,"ac" in "abcaab"结果为False。故本题答案是C选项。 15.A 【详解】本题程序设计语言相关内容。选择结构程序应用的分支语句是if,故本题应选A。 16.A 【详解】本题考查的是Python循环语句。random.randint(1,10)生成1~10的随机整数。经 a[i]//=2或 a[i]+=1不可能为0、12,故选项C、D不可能;选项A中,a[0]=7,只能由a[i]+=1得到结果(如果由a[i]//=2得到,则初始a[0]=14,超出1~10),故初始a[0]=6,初始a[0]=6满足if条件,应执行a[i]//=2,与执行a[i]+=1矛盾了,故选项B不可能。本题应选A。 17.2 【详解】本题考查程序设计。 该程序输出,统计列表中前面两个数相加等于第三个数的个数。第一次循环1+2等于3,c+=1。第二次循环1加3等于4,c+=1;第三次循环3+4不等于5。故正确答案为:2。 18.40 【详解】本题考查循环结构。这段代码使用了一个while循环。循环开始时,s的值为0。然后,循环检查s是否小于或等于30。如果条件成立,循环体内的代码将被执行。在循环体内,s的值增加10,然后再次检查循环条件。这个过程会一直重复,直到s的值大于30。循环结束后,最后一次s增加10的操作也会执行,将s的值增加到40。所以,打印出的结果是40。故答案为:40。 19.∧ 【详解】本题考查运算符。逻辑与运算通常用符号 ∧ 表示。它是一种二元逻辑运算,当两个操作数都为真时,结果才为真。故答案为:∧。 20.30 【详解】本题考查的是Python循环语句。sum=0,变量i的范围是1~10,如果是偶数,则执行sum=sum+i,故程序执行完,sum=sum+i=0+2+4+6+8+10=30。 21.20 【详解】本题考查的是Python循环语句。sum=0,变量i的范围是1~9,如果是偶数,则执行sum=sum+i,故程序执行完,sum=sum+i=0+2+4+6+8=20。 22.正确 【详解】本题考查Python基础。 在Python 3中,使用内置函数input()接收用户输入时,不论用户输入什么格式的内容(包括数字、字符、特殊符号等),该函数一律将输入内容作为字符串(str)返回。故正确。 23.正确 【详解】本题主要考查计算机CPU知识点。CPU的厂商比较出名的有Intel公司(如酷睿系列)和AMD公司(如锐龙系列),表述正确。 24.正确 【详解】本题考查Python函数。input()函数用于从标准输入读取一行,并将其作为字符串返回。无论用户输入什么内容,input()函数返回的值始终是字符串类型。故说法正确。 25. 9 i not in y f=1 check(tmp,bzda[n]) sum/n,2 【详解】本题考查程序分析。 (1)若标准答案为["A","C","A","D","B","ACD","ABD","AC"],当输入的答案是"A,C,A,B,C,ACD,ABC,A,"时,判断出单选题对3道,得6分。多选题全对1道,得2分。漏选1道,得1分。故正确答案为:9。 (2)①if条件判断输入的选择题是否在标准答案中,如果不在标准答案中,则答案长度变量t为0,如果在答案长度变量t加1。故正确答案为:i not in y。②当答案长度变量t和标准答案长度相等时,则表示全对,得2分。否则漏选答案得1分。故正确答案为:f=1。③调用答案核对函数,获得每道题的得分,然后累加到总分变量sum中。故正确答案为:check(tmp,bzda[n])。④调用round函数,保留平均分两位小数。平均分计算为总分除以题目数量。故正确答案为:sum/n,2。 答案第1页,共2页 答案第1页,共2页 学科网(北京)股份有限公司 $$

资源预览图

第2单元 编程计算 2024-2025学年高中信息技术教科版(2019) 必修1
1
第2单元 编程计算 2024-2025学年高中信息技术教科版(2019) 必修1
2
第2单元 编程计算 2024-2025学年高中信息技术教科版(2019) 必修1
3
相关资源
示范课
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。