1、 课程设计报告 设计名称:设计名称: 数据结构课程设计 选题名称:选题名称: 学生成绩管理系统 系系 (院) :院) : 计算机工程学院计算机工程学院 设计时间:设计时间: 2013.12.232013.1.5 设计地点:设计地点: 软件工程实验室、教室软件工程实验室、教室 指导教师评语: 签名: 年 月 日 数据结构课程设计报告 第 1 页,共 页 1课程设计目的 1、训练学生灵活应用所学数据结构知识,独立完成问题分析,结合数据结构理论知识,编写程 序求解指定问题。 2.初步掌握软件开发过程的问题分析、系统设计、程序编码、测试等基本方法和技能; 3.提高综合运用所学的理论知识和方法独立分析和
2、解决问题的能力; 4.训练用系统的观点和软件开发一般规范进行软件开发,巩固、深化学生的理论知识,提高编程 水平,并在此过程中培养他们严谨的科学态度和良好的工作作风。 2课程设计任务与要求: 任务任务 根据教材数据结构-C 语言描述 (耿国华主编)和参考书数据结构题集(C 语言版) (严蔚 敏、吴伟民主编)选择课程设计题目,要求通过设计,在数据结构的逻辑特性和物理表示、数据结构 的选择应用、算法的设计及其实现等方面加深对课程基本内容的理解和综合运用。 设计题目从任务书所列选题表中选取,每班每题不得超过 2 人。 学生自选课题 学生原则上可以结合个人爱好自选课题,要求课题有一定的深度与难度,有一定
3、的算法复杂性, 能够巩固数据结构课程所学的知识。学生自选课题需在 18 周前报课程设计指导教师批准方可生效。 要求:要求: 1、在处理每个题目时,要求从分析题目的需求入手,按设计抽象数据类型、构思算法、通过设 计实现抽象数据类型、编制上机程序和上机调试等若干步骤完成题目,最终写出完整的分析报告。前 期准备工作完备与否直接影响到后序上机调试工作的效率。 在程序设计阶段应尽量利用已有的标准函 数,加大代码的重用率。 2、.设计的题目要求达到一定工作量(300 行以上代码) ,并具有一定的深度和难度。 3、程序设计语言推荐使用 C/C+,程序书写规范,源程序需加必要的注释; 4、每位同学需提交可独立
4、运行的程序; 5 、每位同学需独立提交设计报告书(每人一份) ,要求编排格式统一、规范、内容充实,不少 于 10 页(代码不算) ; 6、课程设计实践作为培养学生动手能力的一种手段,单独考核。 数据结构课程设计报告 第 2 页,共 页 3课程设计说明书 一一 需求分析需求分析 该程序是模拟成绩管理系统,实现对学生成绩的录入,修改,插入,查询,删除,排序,统计等基本 功能,本程序有以下规定: 1. 管理员可以进行学生信息的录入,包括姓名,学号,班级,性别,各科成绩等信息 2. 管理员和学生都可以进行成绩的查询(通过姓名,学号进行查询) 3. 管理员还可以对学生信息进行管理(修改(整个或者单个记录
5、项进行修改) ,插入(在已有的信 息下进行有顺序的插入) ,删除(将整个记录删除) ) ,排序(按各科成绩高低进行排序,或者按 姓名进行排序,或者是按学号进行排序),统计(各个学科的最高分,最低分,及格率) 。 二二 概要设计概要设计 系统用到的抽象数据类型定义系统用到的抽象数据类型定义: ADT LinearList 数据元素:D=ai|aiD0,i=1,2,n,n0,D0为某一数据对象 关系:S=|ai,ai+1D0,i=1,2,n-1 基本操作: Locate(L,e) DestroyList(L) ClearList(L) GetData(L,i) InsList(L,i,e) Del
6、List(L,i, 输入学生信息项的个数; 输入学生信息项的表头; 数据结构课程设计报告 第 3 页,共 页 for(j=1;jstunum=a; printf(“输入学生信息项的表头:“); for(j=1;jr0.dataj); printf(“依次录入学生信息:n“); for(i=1;ilength; 数据结构课程设计报告 第 6 页,共 页 int a=st-stunum; int k,p; char str20; 修改的项目 char ne20; for(i=1;iri.data1,name)=0) p=i; for(i=0;irp.datak,ne); printf(“n 修改的学生信息为:n“); for(j=1;jr0.dataj); pr