实验一的目的是让学生掌握线性结构的基本操作,特别是线性表的建立与遍历,以及在实际场景中如何应用这些概念。在这个实验中,学生需要使用C语言来实现一个成绩统计系统,以此来锻炼他们的编程技能和数据结构理解。
实验内容分为课上和课下两部分:
1. **课上任务**:学生需要在课堂上完成线性表的建立与遍历。首先,要初始化一个空表,然后按照成绩降序插入每个同学的学号、班级信息和成绩到对应的班级链表中。此外,还需要实现查找和删除功能,如果链表中不存在特定同学的信息,则输出“无法找到”。最后,学生需展示线性表的遍历结果,即输出所有信息。
2. **课下任务**:在课后,学生需完成信息的汇总和链表的翻转。信息汇总要求将所有班级的成绩合并到一个总表中,而链表翻转则是将总表中的信息反转到新的链表中。
实验要求遵循以下几点:
- 使用链表作为数据结构实现成绩统计系统。
- 每个班级的成绩信息存储在独立的线性表中。
- 成绩信息必须按降序排列。
- 课上需完成操作1和操作2,课下完成操作3和操作4,以及编写实验报告。
实验提交规定如下:
- 课上部分:将程序输出结果截图(jpg格式)和源代码打包成一个压缩包,按照指定格式命名,并发送至指定邮箱。
- 课下部分:提交电子版实验报告和源代码的压缩包,同样需要按照规定格式命名。提交截止时间为2020年4月7日早晨6点前。
评分标准如下:
- 总分100分,其中40分来自课上,60分来自课下。
- 课上部分,线性表建立与遍历占20分,查找/删除占20分。
- 课下部分,链表合并和翻转各占5分,实验报告占50分,未提交实验报告将导致实验一整体得分为0。
源程序代码的评分考虑了编译错误、功能实现、代码注释和程序健壮性,最高可加10%-20%的额外分数,如果程序有特色且验证有效。
实验报告的评分包括问题分析、详细设计(设计思想、存储结构与操作、程序流程)、用户使用手册的描述清晰度以及实验总结(涉及的数据结构和算法、遇到的问题及收获)。
这个实验旨在提升学生对数据结构的理解,特别是线性表的操作,以及在实际问题中运用这些知识的能力。同时,也强调了编程规范、文档编写和问题解决的重要性。
评论0