2024年江苏省高中信息技术合格考真题Python操作题第二套试卷(含答案解析)_第1页
2024年江苏省高中信息技术合格考真题Python操作题第二套试卷(含答案解析)_第2页
2024年江苏省高中信息技术合格考真题Python操作题第二套试卷(含答案解析)_第3页
2024年江苏省高中信息技术合格考真题Python操作题第二套试卷(含答案解析)_第4页
2024年江苏省高中信息技术合格考真题Python操作题第二套试卷(含答案解析)_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

2024年江苏省高中信息技术合格考真题Python操作题第二套试卷一、Python操作题1.反向输出编程实现输入一个正整数n,反向输出。例如输入正整数:100,输出:001。n=①____(input())#输入正整数nwhilen>0:a=②____#取个位数print(a,end='')#输出a不换行n=③____#去掉n的个位【答案】①.int②.n%10③.n//10【解析】【详解】本题考查Python程序。(1)input()函数获取到的用户输入是字符串类型,为了进行数学运算,需要将其转换为整数类型,所以使用int进行类型转换。故答案为:int。(2)n%10可以得到n个位数。例如,123%10的结果是3。故答案为:n%10。(3)n//10可以去掉n的个位。例如,123//10的结果是12。通过这样不断循环,就可以逐个取出并输出n的每一位数字。故答案为:n//10。2.利用海伦公式求解三角形面积。已知a,b,c为三角形的三条边长,p为三角形的半周长,即p=(a+b+c)/2,计算此三角形面积S的海伦公式为:s=。importmath#导入数学模块defhl(a,b,c):#定义求三角形面积的函数p=_________s=math.sqrt()#sqrt用于计算算术平方根return#返回面积的值a,b,c=3,4,5#边长依次赋值print("此三角形的面积S为:",hl(a,b,c))【答案】①.(a+b+c)/2②.p*(p-a)*(p-b)*(p-c)【解析】【详解】本题考查的是Python自定义函数。依据题意p为三角形的半周长,即p=(a+b+c)/2,故第一空应为:(a+b+c)/2;三角形面积S的海伦公式为:,故第二空应为:p*(p-a)*(p-b)*(p-c)。3.如果将5万元存入银行,选择一年定期自动转存的存款方式,假设5年内利率没有发生变化,均为1.25%,问:5年后到期存款总额为多少?打开“考生文件夹\Python\02.py”,请在序号处填写正确的代码,且在不改变原程序结构的情况下删除序号,调试完成后保存文件。rate=0.0125#给利率变量赋值money=50000#给存款总额变量赋初值(单位:元)foryearinrange(1,①____):money=②____*(l+rate)#计算每年新的存款总额print("五年后的存款总额为:",③____,"元")输出结果【答案】①.6②.money③.money【解析】【详解】本题考查Python程序。(1)因为要计算5年的存款总额,所以循环次数应该是5次,range(1,6)可以产生1到5的整数序列,满足5次循环的需求。故答案为:6。(2)每年的新存款总额是基于上一年的存款总额计算的,所以这里应该是money。故答案为:money。(3)最后要输出的是5年后的存款总额,即循环结束后计算得到的money的值。故答案为:money。4.辗转相除法求最大公约数。defgcd(m,n):r=①____#计算m整除n的余数while②____:#余数不0时重复m=nn=rr=m%nreturnna=int(input("请输入a值:"))b=int(input("请输入b的值:"))print("最大公约数是:",③____(a,b))【答案】①.m%n②.r!=0③.gcd【解析】【详解】本题考查Python程序。(1)在辗转相除法中,首先要计算m除以n的余数,所以用m%n来获取余数并赋值给r。故答案为:m%n。(2)只要余数r不为0,就需要继续进行辗转相除的过程,所以while循环的条件是r!=0。故答案为:r!=0。(3)要计算输入的a和b的最大公约数,需要调用自定义的gcd函数,所以这里是gcd(a,b)。故答案为:gcd。5.以下是计算运动心率的公式:男性最适宜运动心率=(220-年龄-安静心率)*(60%~80%)+安静心率女性最适宜运动心率=(210-年龄-安静心率)*(60%~80%)+安静心率输入年龄、性别、安静心率,计算最适宜的运动心率范围。age=int(input('请输入年龄:'))HRrest=int(input('请输入安静心率:'))gender=input("请输入性别(男/女):")ifgender=='_______':n=220else:n=210low=(n-age-HRrest)*0.6+HRresthigh=(n-age-HRrest)*0.8+HRrestprint('最适宜的心率是:',________,'–',________)【答案】①.男②.low③.high【解析】【详解】本题考查的是Python选择语句。①由n=220可知if条件应是男生,故此处应为:男。②最低心率计算在low,最高心率计算在hight中,故此处应为:low。③处是最高心率,故此处应为:hight。6.从前有一个睿智的大臣,他发明了国际象棋,国王想要奖赏他,他推辞不过,最后对国王说:“陛下请您在这张棋盘的第1个小格里,赏给我1粒麦子,在第2个小格里给2粒,第3小格给4粒,以后每一小格都比前一小格加一倍。请您把棋盘上64个格子中所有的麦粒,都赏给您的仆人吧!”。棋盘上64个格子麦粒的总数计算公式为。请按1颗麦粒约0.05克将这些麦粒数换算成公斤数输出。n=0#n记录所有的麦粒foriinrange():#此处只需填写一个数n+=_______g=n*0.05print("大臣要求得到的麦粒是",______/1000,"公斤")【答案】①.64②.2**i③.g【解析】【详解】本题考查的是Python的计数循环。①range(start,stop,[step]),start:计数从start开始。默认是从0开始。例如range(5)等价于range(0,5);stop:计数到stop结束,但不包括stop,64个格子,故此处应为64;②每一小格都比前一小格加一倍,棋盘上64个格子麦粒的总数计算公式为,故此处应为:2**i;③g存储的是总共麦粒的克数,转换公斤为:g/1000,此处应为:g。7.数学家高斯在很小的时候就能快速算出1+2+3+4+……+100的结果是5050,可以用编程的方式验证结果。s=_________#设置s的初始值foriinrange(1,_________):#只需填一个数字s+=_________#求前i个数之和print("1+2+3+4+……+100的结果是:",s)【答案】①.0②.101③.i【解析】【详解】本题考查的是Python的for循环。①range函数是从1开始,故s初始值应为0,此处应为0;②range(start,stop,[step]),start:计数从start开始。默认是从0开始。例如range(5)等价于range(0,5);stop:计数到stop结束,但不包括stop。例如:range(0,5)是[0,1,2,3,4]没有5;step:步长,默认为1,计算1+2+3+4+……+100,故此处应填101。③每次循环,将i累加到s中,故此处应为i。8.斐波那契数列:该数列的第一个和第二个数均为1,从第三个数起,每个数都是它前两项数字的和。求斐波拉契数列第n项的值。f1=f2=1#变量f1和f2表示斐波那契数列的第一个数和第二个数n=________(input('请输入要求该数列第几个数:'))foriinrange(3,__________):#求该数列第n个数f1,f2=f2,f1+f2print('第',n,'个数是',__________)【答案】①.int②.n+1③.f2【解析】【详解】本题考查的是Python的for循环语句。①input函数接收的是字符数据,结合下文可知n应为整型数据,故此处应为:int。②range(start,stop,[step]),start:计数从start开始。默认是从0开始。例如range(5)等价于range(0,5);stop:计数到stop结束,但不包括stop。例如:range(0,5)是[0,1,2,3,4]没有5;step:步长,默认为1,求斐波拉契数列第n项的值,故此处应为n+1。③由f1,f2=f2,f1+f2可知,第n项的值存放在f2,故此处应为:f2。9.输入一个正整数x,判断其奇偶性。打开“考生文件夹\94”文件夹中的文件“a7.py”,请在序号处填写正确的代码,且不改变原程序的结构。x=___________(input("请输入一个正整数:"))if___________:print(x,"是偶数。")___________:print(x,"是奇数。")【答案】①.int②.x%2==0③.else【解析】【详解】本题主要考查Python分支结构的应用。input接收的数据类型是字符型,需要输入一个正整数x,因此①处需要用int函数转换为整型。判断x是否是偶数,判断对2取余是否为0,即x%2==0。③处对应else部分,故填else。10.水仙花数是指一个三位数,它的每个位上的数字的3次方之和就等于它本身,例如:1³+5³+3³=153。请输出全部水仙花数。print("所有水仙花数:")forxinrange(100,_________):b=x//__________#百位s=(x//10)%10#十位g=x%_________#个位ifx==(b**3+s**3+g**3):print(x)【答案】①.1000②.100③.10【解析】【详解

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论