一、实验实习目的及要求
1. 掌握常用的排序方法,并掌握用高级语言实现排序算法的方法;
2. 深刻理解排序的定义和各种排序方法的特点,并能加以灵活应用;
3. 了解各种方法的排序过程及其时间复杂度的分析方法。
二、实验实习设备(环境)及要求(软硬件条件)
实验在计算机机房,应用软件VC++;
三、实验实习项目、内容与步骤
统计成绩:给出n个学生的考试成绩表,每条信息由姓名和分数组成,试设计一个算法:
(1) 按分数高低次序,打印出每个学生在考试中获得的名次,分数相同的为同一名次;
(2) 按名次列出每个学生的姓名与分数。
四、实验实习所得结果及分析
程序设计流程及分析:
- 先构建结构体数组
- 再对构建好的结构体数组输入数据
- 再编写冒泡排序及快速排序调用函数
- 最后编写输出函数,用来检查程序,排序是否正确,并输出排名
构建结构体的时候,结合题目数据,结构体只包含成绩及姓名;输入数据的时候,需要按照结构体内容进行输入,并且在每次输入之后,清空缓存区;编写排序函数的时候,需要按照排序规则进行编写算法,并且调用函数的时候,调用变量需要和函数格式对应;最后的输出函数,重点在于排名的输出,因为相同分数的是并列,并且后面一位的排名应该和前面总数相同,而不是单纯的前面一位排名的下一位。
五、实验实习结果分析和(或)源程序调试过程
程序代码在资源里