- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
一、编程题
1、36.如下图有一个名为“book.csv”的文件,小明想计算所有库存书籍的总价,于
是编写了下面代码。请将红色①\②\处的代码补充完整。
b=0
s=0
withopen(/data/book.csv,r,encoding=utf-8)asf:
forlineinf. ① ():
a=line.strip(\n).split(,)
b=b+1
ifb1:#第一行是标题,所以从第二行开始计算
s=s+int(a[1])* ②
print(总价:,s)
参考答案:
略
解析:【喵呜刷题小喵解析】:首先,我们需要读取每一行数据,所以①处应填入
“reader”,即“f.reader()”。其次,我们需要将第四列(索引为3)的数据转换为浮点
数,然后乘以第二列(索引为1)的数据,所以②处应填入“float(a[3])”。因此,完
整的代码应为:```pythonb=0s=0withopen(/data/book.csv,r,encoding=utf-8)as
f:forlineinf.reader():a=line.strip(\n).split(,)b=b+1ifb1:#
第一行是标题,所以从第二行开始计算s=s+int(a[1])*float(a[3])print(总价:,
s)```这段代码将读取“book.csv”文件,并计算所有库存书籍的总价。其中,第一行
是标题,所以从第二行开始计算。每一行的数据通过逗号分隔,第二列是书籍的数
量,第四列是书籍的单价,通过将它们相乘并累加,可以得到所有库存书籍的总价
。
2、37.小敏想用二分法对关键字14进行查找,请你帮她补全代码。
lst=[3,12,7,45,9,10,31,90,1,23,14,52]
①
key=14
n=len(a)
i,j=0,n-1
flag=-1
while②:
mid=(i+j)//2
ifkey==a[mid]:
flag=mid
break
elifkeya[mid]:
③
else:
j=mid-1
if④:
print(str(key)+没找到!)
else:
print(str(key)+已找到!)
参考答案:
略
解析:【喵呜刷题小喵解析】:在这个问题中,我们需要使用二分查找法来查找列
表中的关键字。首先,我们设定了列表lst和要查找的关键字key。二分查找法的基
本思路是,每次比较列表中间元素与目标值,如果中间元素正好是要查找的元素,
则查找结束;如果目标值小于中间元素,则在列表的左半部分继续查找;如果目标
值大于中间元素,则在列表的右半部分继续查找。在给出的代码框架中,我们需要
填写①、②、③和④处的代码。对于①,由于题目已经给出了列表lst,所以①处不
需要填写。对于②,while循环的条件应该i=j,表示在列表的左半部分和右半部
分都还有元素时,继续查找。对于③,如果目标值大于中间元素,应该在列表的右
半部分继续查找,所以应该将i设为mid+1。对于④,如果flag的值仍然-
1,表示没有找到目标值,所以应该输出没找到!,否则应该输出已找到!。
因此,完整的代码如上所示。
3、38.标准考试答题卡一般采用2B铅笔填涂,填涂好的答题卡经过扫描后得到相应
的数字化图像,再通过光学识别,完成答题卡信息数据的采集、分析与统计。计算
机判断答题卡中信息点被填涂的标准是灰度值小于132为黑色,灰度值大于等于132
为白色。灰度值计算公式:灰度值=0.299×红色分量(R)+0.587×绿色分量(G)+
0.114×蓝色分量(B),若分别输入n个信息点的RGB颜色值,则其判断程序如下:
n=int(input(请输入信息点个数:))
count=0
foriinrange(1,n+1):
R=int(input(”请输入红色分量:”))
①
B=int(input(”请输入蓝色分量:”))
Gray_scale= ②
if ③ :
print(“黑色”)
count=count+1
else:
print(“白色”)
print(黑色像素总共有:+ ④ +个)
参考答案:
略
解析:【喵呜刷题小喵解析】首先
原创力文档


文档评论(0)