版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2026年江苏省大学生程序设计竞赛省赛试题详解一、单项选择题(共5题,每题2分,计10分)题目1:在江苏省内,某城市交通管理部门需要设计一个智能信号灯控制系统。系统要求在高峰时段(早上7:00至9:00,下午17:00至19:00)主干道的信号灯切换频率为30秒,其他时段为60秒。以下Python代码片段中,哪一项能正确实现该功能?A.pythondefswitch_light(current_time):if760<=current_time<=960or1760<=current_time<=1960:return30else:return60B.pythondefswitch_light(current_time):if7<=current_time<=9or17<=current_time<=19:return30else:return60C.pythondefswitch_light(current_time):if(7<=current_time<=9)or(17<=current_time<=19):return30else:return60D.pythondefswitch_light(current_time):if7<=current_time<=9or17<=current_time<=19:return30else:return60答案:A解析:选项A正确地将时间转换为分钟(如7:00转换为760=420),确保比较的精度。选项B和D直接比较小时数,会导致7:01被误判为高峰时段。选项C语法错误(缺少冒号)。二、填空题(共5题,每题3分,计15分)题目2:江苏省某高校图书馆管理系统需要存储每本书的ISBN、书名和借阅状态。以下Python类定义中缺少了`__init__`方法的完整实现,请补充完整。pythonclassBook:def__init__(self,isbn,title,status):______=isbn______=title______=status答案:self.isbn=isbn,self.title=title,self.status=status解析:在Python中,类的属性需通过`self`参数赋值。`__init__`方法中应将参数传递给实例属性。三、简答题(共2题,每题5分,计10分)题目3:江苏省内某物流公司需要优化配送路线。现有以下数据:-城市:南京(N)、苏州(S)、无锡(W)、常州(C)-距离矩阵(单位:公里):||N|S|W|C|||-|-|-|-||N|0|80|120|100||S|80|0|60|90||W|120|60|0|70||C|100|90|70|0|请设计一个算法,计算从南京出发,经过无锡和苏州,最后到达常州的最低总距离。答案:1.路线:南京→无锡→苏州→常州2.距离:100+60+90=250公里解析:通过距离矩阵逐段累加:100(南京→无锡)+60(无锡→苏州)+90(苏州→常州)=250公里。其他路线(如南京→苏州→无锡→常州)距离更大。四、编程题(共3题,每题10分,计30分)题目4:江苏省某企业需要统计员工月度加班时长。输入为一个列表,每个元素表示某天加班的小时数(可能为负数,表示请假)。请编写函数计算总加班时长(即所有正数之和)。示例输入:`[3,-1,5,0,2,-2]`示例输出:`10`答案:pythondeftotal_overtime(hours):returnsum(hforhinhoursifh>0)解析:通过列表推导式过滤正数并求和。负数和0忽略。五、算法设计题(共1题,15分)题目5:江苏省某景区需要设计一个票务系统,支持按团队批量购票。规则如下:-团队人数≥10且<20,票价为80元/人-团队人数≥20且<50,票价为70元/人-团队人数≥50,票价为60元/人-团队人数不足10人,不提供批量购票优惠请设计一个函数,输入团队人数,输出总票价。示例输入:`35`示例输出:`2450`答案:pythondefcalculate_ticket_price(num_people):ifnum_people<10:return0elif10<=num_people<20:return80num_peopleelif20<=num_people<50:return70num_peopleelse:return60num_people解析:通过分段判断人数区间,计算总票价。答案与解析汇总单项选择题1.答案:A解析:时间需转换为分钟以便精确比较。填空题2.答案:self.isbn=isbn,self.title=title,self.status=status解析:Python类属性赋值需通过`self`。简答题3.答案:250公里解析:基于距离矩阵的最短路径计算。编程题4.答案:pythondeftotal_overtime(hours):returnsum(hforhinhoursifh>0)解析:列表推导式过滤正数求和。5.答案:pythondefcalculate_ticket_price(num_people):ifnum_people<10:return0elif10<=num_people<20:return80
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论