资源简介 2024-2025学年高二上学期期中联考技术试题-高中信息技术一、选择题1.神仙居景区位于浙江省台州市仙居县白塔镇,始建于1998年,总面积22.32平方千米,海拔1271米。神仙居承载了丰富的历史文化底蕴。自然景观中蕴藏着深邃的神秘,奇岩怪石、壮观瀑布、神秘山洞,无一不勾勒出一幅幅古代神话传说的画卷。李白笔下的“天姥山”如今被赋予了新的名号“神仙居”,仿佛将古代诗仙的灵魂与现代人的心灵相连接,使这片土地更加神秘而迷人。结合上述实例,回答下列关于数据、信息和知识的描述不正确的是( )A.22.32平方千米是数据B.李白笔下的“天姥山”如今被赋予了新的名号“神仙居”,这是智慧的体现C.不同季节去神仙居,看到的美景不一样,说明信息具有真伪性D.“神仙居海拔过高,不适宜人类居住。”这是知识的体现2.现在对“奥”字进行编码,用黑色代表“1”,用白色代表“0”,图片位深度为8bit,每行每列均表示一个二进制数,如第1行编码为000010000,则以下正确的是( )A.第二行表示的二进制数的二进制表示为000011000HB.该图片的容量是98BC.第五行表示的二进制数转化为十进制数ASCII值之和为85D,其所对应的字符为“V”D.第五行表示的二进制数之和转化为十进制数为186D3.生成式人工智能(AI)是一种强大的AI类型,它可以通过学习数据中的模式、使用复杂的算法和受人脑启发的学习方法,创造新的原创内容。虽然生成AI目前主要专注于生成文本、计算机编程、图像和声音等领域,但这项技术可以应用于各种目的,包括药物设计、建筑和工程。下列说法正确的是( )A.生成式人工智能需要人工构造知识库,利用推理引擎获得数据B.生成式人工智能可以应用于各种目的,说明它可以完全替代人类完成各种创新内容C.生成式人工智能通过学习数据中的模式,这说明其使用了联结主义的人工智能方法D.生成式人工智能获得的计算机程序代码一定是准确无误的4.使用UltraEdit软件查看字符内码,部分界面如下图所示:则下列说法中正确的是( )A.字符“2”的二进制内码为00110010 B.字符“1”的内码为32C.字符“会”的内码为E1 A3 D.该字符串共占15个字节5.下列关于数据和大数据的说法,正确的是( )A.数据是指所有能输入到计算机且只能被计算机程序处理的符号总称B.大数据的数据类型多,价值密度低C.可通过数据加密和数据解密来提高数据的保密性和完整性D.大数据要分析的是抽样数据,而不是全体数据6.下列关于数据安全的说法,不正确的是( )A.保护数据安全需要保护存储数据的介质 B.保护数据安全需要提高数据本身的安全C.数据校验可以提高数据的完整性 D.重要数据可以通过加密与数据校验提升安全性,不必备份7.某同学根据下图所示流程图编写的Python程序段如下:n=int(input())if n<=10: z=1if n<=50: z=2else: z=3用下列输入数据测试程序段与流程图,两者得到的z值不同的是( )A.5 B.50 C.30 D.608.有一排苹果箱,其中第i箱苹果的个数为2i-1个,现要取m个苹果,求取走的箱子个数。实现该功能的程序段如下,方框中应填入的代码为( )m= int(input("请输入要取走的苹果个数: "))t=0 #取走m个苹果所需的箱子数while m != 0: if : t+=1 m//=2print(t)A.m%2=0 B.m%2=1 C.m%2==0 D.m%2==19.有如下Python程序段:s="5A9C3B0E7D"ans="";i=0while s[i]!="0": t=int(s[i]) ans=ans+s[t] i=t-3运行该程序段后,变量ans的值是( )A."BCDEA" B."BD" C."ABCD" D."BCD"10.有如下程序段:import randoms=[]f=[False]*10i=0while i<6: num=random.randint(1,10) if not f[num-1]: s.append(num) f[num-1]=True i+=1print(s)输出的结果可能是( )A.[2,5,7,7,2,9] B.[1,2,3,4,5,6] C.[0,1,4,5,10,3] D.[9,8,4,3,2,8]11.有如下程序段:def find_max(s): max="";temp="" for ch in s: if "0"<=ch<="9": temp=ch+temp else: if max < temp: max=temp temp="" return maxline="bac123h9hello67"print(find_max(line))执行该程序段后,输出的结果是( )A.123 B.321 C.9 D.7612.为了找出四位整数abcd中满足(ab+cd)(ab+cd)=abcd的数,小明编写如下Python程序来解决这个问题。程序运行如图所示,正确的是( )2025 3025 9801 共找到3个c=0for i in range(1000,10000): ① n=i%100 k=(m+n)**2 if ②: print(i) c+=1print("共找到",③, "个整数")①m=i//100 ②m=i//10%100 ③k==abcd ④k==i ⑤str(c) ⑥cA.①③⑤ B.②③⑥ C.①④⑥ D.②④⑥二、填空题13.编写“部分单词统计”的Python程序。程序功能:读入“data.txt”文件,该文件中存储了小明同学近期收集的课外词汇,格式如图所示,请补充下列程序:file="data.txt"word_a=[];n=0;max=0;maxstr=""for word in open(file): if word[0:1]=='a': word_a.append(① ) print(word) if max < len(word): max=② maxstr=len(word) ③print("字母a开头的单词个数:",n)print("字母a开头的单词长度最长的是:",maxstr,"长度为:",max)(1)补充上述代码(2)该程序段运行后,列表word_a中的数据有什么相同之处三、综合题14.“三位一体”是高校招生的一种选拔模式,其所依据的成绩是将学生的高考成绩、学考成绩和综合素质测试成绩按比例折算而成。编写Python程序,实现将学考成绩折算成相应的分数这一功能。某高校的学考等级与成绩折算如图a所示。若某考生的学考成绩如图b所示,根据上述高校的成绩折算方式,则该考生的折算分数为95分学业水平考试等级 A B C D成绩折算(分) 10分 9分 7分 4分 图a考试科目 语文 数学 英语 物理 化学 生物学 历史 地理 政治 技术考试等级 A A A A A B C A B A 图b(1)利用计算机解决问题的一般过程 (写顺序)①编写程序 ②设计算法 ③调试运行程序 ④抽象与建模(2)现有高三(1)班所有学生的学考成绩,保存在“成绩.txt”中,要求计算每位同学的分数,存入列表total中,补充下列程序。dic={"A":10,"B":9,"C":7,"D":4}f=open(① )total=[]line=f.readline()while line: ② for ch in line: score+=③ total.append(score) #在total末尾加入一个学生的成绩 f.readline()pirnt(total)四、操作题15.祖玛游戏:石蛙每次吐出一个珠子打入轨道里的珠串中,现有轨道长度为20,初始珠串长度为8,珠子颜色共有4种(用A~D表示)。其中珠串用字符串模拟存储。打珠方式有以下3种:①若珠串中已有连续2颗珠子与生成的珠子颜色相同,则打在这两颗珠子中间,形成3颗颜色相同的珠串,并执行消除操作,消除后若还有3颗及以上其他相同的珠子则继续消除;②若珠串中只有1颗珠子与生成的珠子颜色相同,则打在这颗珠子的后面;③若珠串中没有珠子与生成的珠子颜色相同,则打在珠串的第1个位置。石青蛙每打1颗珠子,整个珠串往前走1格。若有珠子到达终点,输出“游戏失败”;若轨道上的珠子全部被消除,输出“游戏成功”。实现该游戏的部分代码如下:(1)若当前轨道上的珠串为“AABDBDBBDD”,依次打入“BDC”的珠子后,轨道上的珠串为(2)定义start函数,其功能是创建初始化珠串存入ball,不允许出现连续3颗及以上颜色相同的珠子。定义check函数,检查串珠中相同颜色超过3个及以上的珠子,并删除。定义seek函数,找到待插入的珠字的位置,并返回待插入的位置,请将下列代码补充完整。请将下列代码补充完整。def start(): #创建初始化珠串存入ball,不允许出现连续3颗及以上颜色相同的珠子。 return balldef check(ball): j=0;i=0 flag=True#判断是否有删除 while flag: flag=False if len(ball)==0: break i=0;j=i while i < len(ball)-1: if ball[i]!=ball[i+1]: L=i-j+1 if L>=3:#找到相同颜色超过3个及以上 ball=① flag=True break else: j=i+1 i+=1 else: if i-j>=2: ball=ball[:j] return balldef seek(ball,b): #找到待插入的珠字的位置,并返回待插入的位置#代码略 return w①处的程序代码应该填写代码为 (单选)A.ball[:j]+ball[i+1:] B.ball[:j]+ball[i:] C. ball[:i-L]+ball[i:](3)主程序:补充程序ball=start()length=len(ball)rest=20-length #轨道剩余长度,若长度为0,游戏结束#随机生成珠串的颜色while ② : m=random.randint(0,4) b=chr(ord('A')+m) w= ③ ball=ball[:w]+b+ball[w:] #插入打入的珠子 ball=check(ball) length=len(ball) rest=④ if length==0: print("游戏成功!") break else: print("游戏失败!")题号 1 2 3 4 5 6 7 8 9 10答案 C D C A B D A D B B题号 11 12答案 C C13. word.strip() len(word) n+=1 都是a开头的单词【详解】本题考查循环结构的程序实现,文本数据处理。(1)①处这个位置,需要将以字母“a”开头的单词添加到word_a列表中。由于word变量包含了从文件中读取的每一行(包括换行符),需要使用strip( )方法去除换行符。因此,补充后的代码应该是:word.strip() ;②处需要更新max变量的值,使其等于当前单词的长度。因此,此处填写len(word)。③处需要增加以字母“a”开头的单词的计数。因此,补充后的代码应该是:n += 1。(2)程序段运行后,列表 word_a 中的所有数据都是以字母“a”开头的单词。这是因为在程序中,只将以字母“a” 开头的单词添加到了word_a列表中。因此,word_a列表中的所有元素都有这个共同的特征。14. 4213 "成绩.txt" score=0 dic[ch]【详解】本题考查Python综合应用。(1)利用计算机解决问题的一般过程遵循特定的顺序。首先是“抽象与建模”,这一步骤需要从实际问题中提炼出关键要素,确定问题的数学模型或逻辑结构,将现实问题转化为计算机能够处理的形式,对应这里的第4步;接着是“设计算法”,也就是根据前面抽象建模得到的内容,规划出解决问题的具体步骤和流程,是第2步;然后“编写程序”,将设计好的算法用具体的编程语言实现出来,为第1步;最后“调试运行程序”,通过运行程序来检查是否存在错误、能否正确输出预期结果等,属于第3步。所以顺序是4213。故答案为:4213。(2)在Python中,要打开一个文件进行读取操作,使用open()函数时,需要在括号内传入文件名(如果文件和程序在同一目录下,直接写文件名即可,若不在同一目录,需写清楚文件的相对路径或绝对路径)。题目中明确说明高三(1)班所有学生的学考成绩保存在“成绩.txt”中,这里就是要打开这个文件来读取里面的数据,所以应该填入“成绩.txt”,让open()函数能够正确定位并打开对应的文件用于后续的数据读取操作。故答案为:“成绩.txt”。在循环处理每一行代表的学生学考成绩数据之前,需要先初始化用于累计该学生折算后成绩的变量。因为后续要把每个科目的折算成绩不断累加到这个变量中,最开始时它应该初始化为0,这样才能保证从无到有正确地进行累加计算,避免出现初始值不确定导致结果错误的情况,所以这里要写上score=0语句,用于给成绩累计变量赋初值。故答案为:score=0。在循环遍历每一行(也就是每个学生的各科目学考等级情况)中的字符(代表学考等级)时,目的是根据等级从给定的字典dic中获取对应的折算分数,并累加到score变量中。字典dic的键是学考等级(如“A”、“B”、“C”、“D”),值是对应的折算分数(如10、9、7、4)。这里ch代表当前遍历到的学考等级字符,通过dic[ch]这种字典的索引取值方式,就可以获取到相应的折算分数,然后累加到score变量中,从而实现逐科目统计一个学生的学考成绩折算总分的功能。故答案为:dic[ch]。15. CAABDDB A rest>0 seek(ball,b) 20-length【详解】本题考查Python综合应用。(1)在原珠串“AABDBDBBDD”中,我们可以看到有连续2颗“B”,按照游戏规则①,新打入的“B”珠子要打在这两颗“B”中间,这样就形成了“BBB”这一连续3颗相同颜色珠子的组合,随后执行消除操作,“BBB”被消除掉,于是就变成了“AABDBDDD”。此时,“DDD”为3个连续的珠子,因此被消除,于是变成“AABDB”。按照规则②,新打入的“D”珠子要打在这颗已有的“D”珠子后面,于是变成“AABDDB”。按照规则③,新打入的“C”珠子要打在珠串的第一个位置,这样珠串就变成了“CAABDDB”。故答案为:CAABDDB。(2)当发现有连续L(L>=3)个相同颜色珠子需要删除时(当前相同颜色珠子的起始位置为j,结束位置为i),要把这一段相同颜色的珠子从珠串中移除。正确的做法是保留从珠串开头到这组相同颜色珠子起始位置j之前的部分(即ball[:j]),再加上从这组相同颜色珠子结束位置i+1往后的部分(即ball[i+1:]),这样就能实现把中间这组连续相同且数量大于等于3的珠子删掉,所以应该选择ball[:j]+ball[i+1:]。故答案为:A。(3)在主程序的循环条件这里,循环的目的是持续进行游戏过程,只要轨道还有剩余空间(也就是还能继续往轨道上添加珠子,用rest表示剩余长度,当rest大于0时,意味着轨道还有位置可以容纳新珠子,游戏可以继续),就应该不断循环让石蛙吐出珠子打入珠串等操作继续进行下去。所以循环条件应该填写rest>0,保证游戏在轨道还有剩余空间时持续运行。故答案为:rest>0。在生成了一个要打入轨道珠串的珠子(用b表示其颜色)后,需要根据前面定义的seek函数的功能,找到这个珠子应该插入到当前珠串ball中的具体位置,然后才能按照规则把珠子插入到正确的位置处,所以这里要调用seek函数并传入当前珠串ball和要插入的珠子颜色b,获取到插入位置,从而进行后续插入珠子等操作。故答案为:seek(ball,b)。每打入一颗珠子并且完成相应操作(如消除等)后,需要更新轨道的剩余长度rest。轨道原本总长度是20,当前珠串长度用length表示,那么剩余长度就等于总长度20减去当前珠串长度length,所以这里要重新计算并更新rest的值为20-length,以此来准确反映轨道还能容纳珠子的情况,继续判断游戏是否结束等后续流程。故答案为:20-length。 展开更多...... 收起↑ 资源预览