万卷网> 电子学会考级 >Python等级考试 > 2022年9月电子学会青少年软件编程(Python六级)等级考试试卷

2022年9月电子学会青少年软件编程(Python六级)等级考试试卷
操作/编程 六级 2022 2022-11-29 17:22:47 52

一、编程题

1.

使用Python的sqlite3库完成以下问题。
1.在data.db文件内创建一个学生成绩表student(不考虑data.db的路径)
2.student中包含
学号(num),类型INTEGER PRIMARY KEY
姓名(name),类型TEXT
成绩(grade),类型int
名次(rank),类型int
3.增加一条记录(1,"lilei",100,50)

程序如下,请补全代码。
import sqlite3
conn=        ①        
cur =        ②        
cur.execute("CREATE TABLE IF NOT EXISTS student(num INTEGER PRIMARY KEY ,name text,grade int,rank int)")
cur.execute("insert into student(        ③        ) values(        ④        )")
        ⑤        
cur.close()
conn.close()

2.

小明编写一个类实现设置马的品种、年龄、性别及速度,输出相应的语句,请补全代码。
如下代码输出结果为“一匹阿拉伯12岁的公马,在草原上奔跑的速度为50km/h”。
class         ①        :
    def __init__(self, category, gender, age):
        self.category = category
               ②        
        self.age = age
        self.speed = 0
    def get_descriptive(self):
        self.info = "一匹" + self.category +        ③        + "岁的" +self.gender + "马"
    def write_speed(self, new_speed):
        self.speed = new_speed
        addr = "在草原上奔跑的速度为"
        print(        ④        + "," + addr + str(self.speed) + "km/h。")
horse = Horse("阿拉伯","公",12)
horse.get_descriptive()
horse.write_speed(50)

3.

有十位选手参加某项比赛,共有10位评委参与评分。每位选手得分已保存在“score1.txt”文件中,如图所示。第一行表示1号选手的所有得分,第二行表示2号选手的所有得分,依次类推。最终得分的计分规则为去掉一个最高分,去掉一个最低分,求余下分数的平均分。请找出最终得分最高的选手。“score1.txt”文件的内容如图所示。

程序代码如下:
with open("/data/        ①        ", encoding="UTF-8") as f:
    data = f.readline().strip()
    i = 0
    m = 0
    while data:
               ②        
        score = list(map(float, data.split()))
        result = (sum(score) - min(score) - max(score)) / (len(score) - 2)
        if         ③        :
            m = result
            pos = i
        data =        ④        .strip()
print("成绩最佳的选手是:" +        ⑤        + "号,得分:" + str(m) + "分")
请在画线处填入正确的代码。

公众号
客服 反馈
顶部