高中信息技术 / 浙教版(2019) / 选修1 数据与数据结构 / 第五章 数据结构与算法 / 5.3 数据排序 / 编号:20086590

排序算法的应用-学习任务单

日期:2024-05-15 科目:高中信息技术 类型:学案 来源:二一教育课件站
关键词:学习,金牌,数据,排序,名次,for
预览图 2
高中信息技术 高中信息技术
学习任务单 课程基本信息 课题 5.3 数 据 排 序——— 排序算法的应用 学习目标 学习目标: 1、能对给定的文件中的数据进行抽象并建立模型。 2、能合理选用数据结构,设计排序算法。 3、能用Python语言编写具体的排序程序。 4、能自觉对学习生活具体问题抽象建模、设计算法并编写程序及调试程序,如:对成绩进行同分同名次排名、按排车辆考场等。 课前学习任务 观察金牌排行榜。 课上学习任务 【学习任务一】 项目学习:2022北京冬奥会金牌编制金牌排行榜编制 【学习任务二】 挑战实践:给2022北京冬奥会金牌编制金牌排行榜添加上金牌名次,而且同分数同名次,如何继续编程实现? 【学习任务三】 学习生活中的应用实践: 在刚刚结束的联盟考成绩统计中,请你帮忙编写程序,能统计各科总分,并按照总分从高到低排序,并添加上总分名次,而且同分数同名次,成绩文件为“联盟.csv”,大概有5000左右考生,最后输出到“联盟2.csv”文件中。 参考答案: 【学习任务一】 项目学习:2022北京冬奥会金牌编制金牌排行榜编制 import csv #导入csv模块 csvFile = open(“jp.csv”, “r”) #打开jp.csv数据文件 reader = csv.reader(csvFile)#建立一个读入数据的对象reader a = [] #定义空列表a for item in reader: #每一行为a列表一个元素,此元素为字符串 a. append(item) #csv通过这种样式读入的数据为字符串csvFile.close() #关闭jp.csv数据文件 #冒泡排序 for i in range(1,len(a)-1): #排序不包含第一行数据(索引为0) for j in range(1,len(a)-i):#从前往后冒泡排序 if int(a[j][2]) 免费下载 (校网通专属)