image

编辑人: 流年絮语

calendar2025-05-10

message3

visits400

2023月09月Python六级实操参考答案

一、编程题

1、36.钢筋问题
统计三角形数量及钢筋总长度。某工程需要很多由钢筋组成的三角形,在文本文件“data.txt”中每一行的三个数字分别表示三根钢筋的长度(整数,单位:厘米,数字间用空格隔开),若这三根钢筋能组成三角形,要求统计并输出三角形数量以及这些钢筋材料的总长度(若不能组成三角形则不对这些数据进行统计),文本文件数据如图a所示,程序运行界面如图b所示。
| 完成该任务的思路是:首先从文本文件“data.txt”读取文本内容到变量line,提取边长数据后,统计数据并输出结果。相关代码如下,请补全代码:def readfile(filename): f = open(filename,encoding = "utf-8") m=[]; n=[]; k=[] line = f.readline() while line: x=line.strip().split(" ") m.append(int(x[0])) n.append(int(x[1])) k.append(int(x[2])) ① f.close() return m,n,k def triangle(x,y,z): # 判断数据x、y、z能否组成三角形 flag=False if ② : flag=True return flag a,b,c=readfile("/data/ ③ ") #读入文件n=len(a);count=0;sum=0print("能组成三角形的数据有:")for i in range(n): if ④ : sum+=a[i]+b[i]+c[i] print(a[i],b[i],c[i]) count+=1 print("能组成三角形的共有:",count,"组")print("共需要材料长度共是:",sum) | |
| ------------------------------------------------------------ | ---- |
| | |
| | |


2、37.工资管理
编写简单的工资管理程序,系统中包含工人(worker)和经理(manage),所有员工都有员工号、姓名、基本工资等属性。
工人:工人具有工作小时数和时薪的属性,工资计算方法为基本工资 + 工作小时数 * 时薪;
经理: 具有固定的月薪,计算方法为固定月薪。
根据以上的要求设计类,显示人员的信息和工资情况,运行结果如下:
工号:001,姓名:King,本月工资:10000
King的月薪是:10000
工号:002,姓名:Lily,本月工资:20000
Lily每天的工作时长:10小时
Lily的月薪是: 20000
class Person():
def __init__(self,id,name,salary):
self.id = id
self.name = name

def __str__(self):#查看对象,触发执行print语句
msg = '工号:{},姓名:{},本月工资:{}'.format(self.id,self.name,self.salary)
return msg
class Worker(Person):
def __init__(self,id,name,salary,hours,per_hour):
super().__init__(id,name,salary)
self.hours = hours
self.per_hour = per_hour
def getSalary(self):
money = self.hours * self.per_hour

return ③
class Manage(Person):
def __init__(self,id,name,salary,time):
super().__init__(id,name,salary)
self.time = time

def getSalary(self):
return self.salary,self.time
worker = Worker('001','King',2000,160,50)
sal = worker.getSalary()
print(worker)
print('King的月薪是:{}'.format(sal))
manage = Manage('002','Lily',20000,10)
④ , work_time = manage.getSalary()
print(manage)
print('{}每天的工作时长:{}小时'.format('Lily', ⑤ ))
print('Lily的月薪是:',sal)

参考答案:① self.salary = salary② money += self.salary③ self.salary④ print(manage.getSalary())⑤ manage.time


3、38.考试成绩处理
将某班级的期末考试成绩存放于data.db数据库文件的score数据表内,部分成绩截图如下。
现要求求出english成绩大于或等于80的所有学生的总分平均分,并输出结果。(无需运行通过,写入代码即可)
import sqlite3
conn=sqlite3.connect("data.db")
cur=conn.cursor( )
sql="select * from score ① "
cur.execute(sql)

conn.commit()
cur.close()
conn.close()
zf=0
for i in range(len(list1)):
zf+=sum( ③ )
pjf=zf/len(list1)
print("english大于或等于80分同学的总分平均分是",pjf)

参考答案:```pythonimport sqlite3conn = sqlite3.connect("data.db")cur = conn.cursor()# 替换①sql = "select * from score where english >= 80"cur.execute(sql)# 替换②rows = cur.fetchall()# 替换③zf = 0for i in range(len(rows)):zf += rows[i][1]# 计算平均分pjf = zf / len(rows)# 输出结果print("english大于或等于80分同学的总分平均分是", pjf)cur.close()conn.close()```


喵呜刷题:让学习像火箭一样快速,快来微信扫码,体验免费刷题服务,开启你的学习加速器!

创作类型:
原创

本文链接:2023月09月Python六级实操参考答案

版权声明:本站点所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明文章出处。
分享文章
share