2023月03月Python三级实操答案及解析.pdfVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

一、编程题

1、36.百钱买百鸡是我国古代数学家张丘建在《算经》一书中提出的数学问题,问

题的原文是:鸡翁一值钱五,鸡母一值钱三,鸡雏三值钱一。百钱买百鸡,问鸡翁

、鸡母、鸡雏各几何?这个问题用现代文描述起来就是:公鸡5文钱1只,母鸡3文

钱1只,小鸡3只1文钱。如果用100文钱买100只鸡,那么公鸡、母鸡和小鸡各应该

买多少只呢?请完成下面程序中空白处的语句,实现对问题的求解,找出所有符合

题目要求的买鸡方案,并输出。

\#设cock、hen、chicken分别为公鸡、母鸡和小鸡的数量,num为符合题目要求的方

案数目。

num=0

forcockinrange(1,21):

forheninrange(1,34):

forchickenin①:

if②==100andcock*5+hen*3+chicken/3==③:

num=④

print(f第{num}种方案是:公鸡{cock}只,母鸡{hen}只,小鸡{chicken}只)

参考答案:①range(1,101,3)②cock+hen+chicken③100④num+1

解析:【喵呜刷题小喵解析】:

在解答这个问题时,我们使用了嵌套循环。首先,我们设置了公鸡、母鸡和小鸡

数量分别为cock、hen和chicken。然后,我们遍历公鸡和母鸡的数量,对于小鸡

数量,由于小鸡是3只1文钱,所以我们需要将小鸡的数量设为3的倍数,并且最小

为1(小鸡不能为0只)。因此,小鸡的数量范围应为1到100,步长为3,即range(1,

101,3)。

接着,我们检查公鸡、母鸡和小鸡的总数量是否等于100,以及它们的总价是否等

于100文钱。如果满足这两个条件,我们增加方案的数量,并打印出公鸡、母鸡和

小鸡的数量。

在这个程序中,①处填写的语句是“range(1,101,3)”,表示小鸡的数量范围;②处填

写的语句是“cock+hen+

chicken”,表示公鸡、母鸡和小鸡的总数量;③处填写的语句是“100”,表示100文

钱;④处填写的语句是“num+1”,表示增加方案的数量。

2、37.妙妙学校举行了知识竞赛,有一、二、三3个班分别派出最优秀5名代表参

加此次竞赛。这15名代表的成绩存放于”jscj.csv”文件中,现在妙妙读取了其中的数

据,数据内容如图所示:

下列代码实现了读取竞赛分数信息,并输出各班平均分的情况,请你补全代码。

importcsv

withopen(/data/jscj.csv,encoding=utf-8)asf:

rows=list(①(f))

sum=[0,0,0]

forrowinrows[1:]:

ifint(row[0])==1:

sum[0]+=int(row[2])

elifint(②)==2:

sum[1]+=int(row[2])

else:

sum[2]+=int(row[2])

foriinrange(1,4):

print(str(i)+班的平均分为:,round(③/5,2))

参考答案:br/①csv.reader②row[0]③sum[i-1]

解析:【喵呜刷题小喵解析】

首先,要读取csv文件,我们需要使用csv模块reader函数。因此,在①处,应该

填写csv.reader。

其次,在②处,我们需要判断当前行的班级编号。由于班级编号在第一列,所以应

该填写row[0]。

最后,在③处,我们需要计算每个班级的平均分。由于sum数组已经记录了每个班

级的总分,所以我们需要将总分除以5(每班5名代表)并保留两位小数。注意,我

们需要使用i-1作为索引,因为数组索引从0开始,而我们的班级编号从1开始。

所以,完整的代码应该如下:

```python

importcsv

withopen(/data/jscj.csv,encoding=utf-8)asf:

rows=list(csv.reader(f))

sum=[0,0,0]

forrowinrows[1:]:

ifint(row[0])==1:

sum[0]+=int(row[2])

elifint(row[0])==2:

sum[1]+=int(row[2])

else:

sum

文档评论(0)

喵呜刷题 + 关注
实名认证
文档贡献者

来喵呜刷题,完成你的职业蜕变!

1亿VIP精品文档

相关文档