数据结构课程设计 学生成绩管理系统(c )

上传人:第*** 文档编号:78872457 上传时间:2019-02-15 格式:PDF 页数:50 大小:1.11MB
返回 下载 相关 举报
数据结构课程设计 学生成绩管理系统(c  )_第1页
第1页 / 共50页
数据结构课程设计 学生成绩管理系统(c  )_第2页
第2页 / 共50页
数据结构课程设计 学生成绩管理系统(c  )_第3页
第3页 / 共50页
数据结构课程设计 学生成绩管理系统(c  )_第4页
第4页 / 共50页
数据结构课程设计 学生成绩管理系统(c  )_第5页
第5页 / 共50页
点击查看更多>>
资源描述

《数据结构课程设计 学生成绩管理系统(c )》由会员分享,可在线阅读,更多相关《数据结构课程设计 学生成绩管理系统(c )(50页珍藏版)》请在金锄头文库上搜索。

1、课程设计课程设计( (论文论文) )任务书任务书 软软 件件 学学 院院学院专业班 一、课程设计(论文)学学 生生 成成 绩绩 管管 理理 系系 统统 的的 设设 计计 与与 实实 现现 二、课程设计(论文)工作自 20142014 年 1212 月 2222 日起至 20122012 年 1212 月 2727 日止 三、课程设计(论文) 地点:创创 新新 大大 楼楼 机机 房房 四、课程设计(论文)内容要求: 1本课程设计的目的本课程设计的目的 训练学生灵活应用所学数据结构知识,独立完成问题分析,结合数据 结构理论知识,编写程序求解指定问题; 初步掌握软件开发过程的问题分析、系统设计、程序

2、编码、测试等基 本方法和技能; 提高综合运用所学的理论知识和方法独立分析和解决问题的能力,巩 固、深化学生的理论知识,提升编程水平。 2课程设计的任务及要求课程设计的任务及要求 1)基本要求:)基本要求: 要求从分析题目的需求入手,按设计抽象数据类型、构思算法、通过 设计实现抽象数据类型、编写上机程序和上机调试等若干步骤完成题目, 最终写出完整的报告; 在程序设计阶段应尽量利用已有的标准函数,加大代码的重用率; 程序设计语言推荐使用 C/C+,程序书写规范,源程序需必要的注释; 每位同学需提交可独立运行的程序和规范的课程设计报告。 2)课程设计论文编写要求)课程设计论文编写要求 理论设计部分以

3、课程设计论文的形式提交,格式必须按照课程设计论 文标准格式进行书写和装订; 课程设计报告(论文)包括中文目录、设计任务、需求分析、概要设 计、详细设计、编码实现、调试分析、总结、谢辞、参考文献、附录等; 设计部分应包含系统功能模块图,调试分析应包括运行截图等。 3)课程设计评分标准:)课程设计评分标准: 学习态度:10 分; 系统设计:20 分; 编程调试:20 分; 回答问题:20 分; 论文撰写:30 分。 4)参考文献:)参考文献: 严蔚敏,吴伟民. 数据结构(C 语言版)M. 清华大学出版社. 2010.3 严蔚敏,吴伟民. 数据结构题集(C 语言版)M. 清华大学出版社. 1999.

4、2 何钦铭,冯燕等. 数据结构课程设计M. 浙江大学出版社. 2007.8 5)课程设计进度安排)课程设计进度安排 准备阶段(4 学时) :选择设计题目、了解目的要求、查阅相关资料; 程序模块设计分析阶段(4 学时) :程序概要设计、详细设计; 代码编写调试阶段(8 学时) :程序模块代码编写、调试、测试; 撰写论文阶段(4 学时) :总结设计任务和设计内容,撰写设计论文。 学生签名: 年月日 6)课程设计题目具体要求:)课程设计题目具体要求: 能够实现对学生成绩的常用管理功能。能够实现对学生成绩的常用管理功能。 采用一定的存储结构对学生成绩进行管理;采用一定的存储结构对学生成绩进行管理; 可

5、以进行成绩的录入、查询、修改、删除等操作;可以进行成绩的录入、查询、修改、删除等操作; 可以查询某门课程的平均分可以查询某门课程的平均分,学生的排名学生的排名,不同分数段的学生人数不同分数段的学生人数 及学生信息等;及学生信息等; 可以查询某学生的各课程分数,总分及学生的班级排名等;可以查询某学生的各课程分数,总分及学生的班级排名等; 可以按学号排序输出全部学生的成绩信息、总分及班级排名等。可以按学号排序输出全部学生的成绩信息、总分及班级排名等。 课程设计课程设计( (论文论文) )评审意见评审意见 (1)学习态度(10 分) :优() 、良() 、中() 、一般() 、差() ; (2)系统

6、设计(20 分) :优() 、良() 、中() 、一般() 、差() ; (3)编程调试(20 分) :优() 、良() 、中() 、一般() 、差() ; (4)回答问题(20 分) :优() 、良() 、中() 、一般() 、差() ; (5)论文撰写(30 分) :优() 、良() 、中() 、一般() 、差() ; (6)格式规范性及考勤是否降等级:是() 、否() 评阅人:周娟职称:讲师 2014 年 12 月 28 日 目目录录 第 1 章 设计任务分析.1 第 2 章 功能实现详细设计.2 第 3 章 功能测试.8 第 4 章 调试与改进.19 第 5 章 小结.20 第 6 章

7、 源代码.21 1 第第 1 1 章章 设计任务分析设计任务分析 1.1.需求与功能分析需求与功能分析 1.1.1.需求分析需求分析 学生成绩管理系统是一个教育单位不可缺少的部分它的内容对于学 校的决策者和管理者来说都至关重要所以学生成绩管理系统应该能够为 用户提供充足的信息和快捷的查询手段。以前各个学校的学生成绩管理基 本上都是靠手工进行,但随着各个学校的规模增大,有关学生成绩管理工 作所涉及的数据量也越来越大,有的学校不得不靠增加人力、物力来进行 学生成绩管理。这种管理方式存在着许多缺点,如:效率低、保密性差等, 另外其所用时间长,产生大量的文件和数据,这对于查找、更新和维护都 带来了不少

8、的困难。如今学校的学生越来越多,成绩管理的工作量越来越 大,手工管理成绩的弊端也越来越明显。作为计算机应用的一部分,使用 计算机对学生档案信息进行管理具有手工管理所无法比拟的优点,如检索 迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等, 能够极大地提高学生档案管理的效率。所以我想借本次课程设计之际,设 计一个简易的学生成绩管理系统。 1.1.2.功能分析功能分析 1)输入输出的形式和输入值的范围 首先输入学生个数按回车键,然后按照提示选择输入学生信息并将学 生信息保存在文本文档中,具体对学生信息进行插入删除查询操作时,将 保存在文本文档中的学生信息提取出来保存在自己定义的数据结

9、构中,然 后再对该数据结构进行操作,所有操作完成后或者在相应的命令后再将学 生信息保存到文本文档中。输入数据类型主要是 char、int、float 等数据类 型,输入内容包括学号、姓名、基础会计成绩、大学英语成绩、数据结构 成绩、总分、平均分等数据。输出的形式为学号、姓名、基础会计成绩、 大学英语成绩、数据结构成绩、总分、平均分等数据。 2)程序所达到的功能 i. 数据输入功能,输入的数据能最终保存在文件中; ii. 数据删除功能,能最终从文件中删除; iii. 多种排序功能,根据自己设计的数据结构,设计排序算法; iv. 多种查询功能(如按学号查询、按姓名查询等)及输出功能; v. 学生信

10、息的修改 (比如修改学生姓名, 修改学生某门课程的成绩等) ; vi. 其他功能(如各种统计,统计每个学生所有课程的平均分,统计某 门课程的所有学生的平均分等等) 2 第第 2 2 章章 功能实现详细设计功能实现详细设计 2.1.库函数库函数 先编入系统所需的库函数,使程序可运行。 #include #include #include #include/主要是对 cin,cout 之类的一些操纵运算, 是 I/O 流 控制头文件 #include/文件和标准控制台的输入输出 2.2.菜单界面的设计菜单界面的设计 2.2.1.主菜单的设计主菜单的设计 在主界面中包括“输入学生信息并保存到文件 读

11、取文件并输 出学生信息 按学号查询 按姓名查询 按学号修改信息 插 入学生信息 按学号删除信息 各科成绩排序 按总分降序排序 各科成绩统计 分数段查找 按学号排序 退出” 等功能。 每个函数体如下: void input(Stu *r);/输入 void output(Stu *r);/输出 void searchnum(Stu *r);/按学号查找 void searchname(Stu *r); /按姓名查找 void modify(Stu *r);/修改学生信息 Stu *insert(Stu *r);/插入信息 void erase(Stu *r);/按学号删除信息 void sort

12、menu();/排序菜单 void sortsum(Stu *r);/按总分降序排序 void stat(Stu *r);/统计各科总分和平均分信息 void intmenu();/分数段查找菜单 3 void sortnum(Stu *r);/按学号排序 2.2.2.排序菜单的设计排序菜单的设计 在排序菜单中包括“按基础会计成绩排序 按大学英语成绩排 序 按数据结构成绩排序 返回上级菜单” 等功能。 每个函数体如下: void sort_BA(Stu *r);/基础会计成绩排序 void sort_UE(Stu *r);/大学英语成绩排序 图 2.2.1 主菜单界面 在此界面中用 户可以选择

13、要操作的选项,回车之后 即进行相关操作或进入相关二级菜单 4 void sort_DS(Stu *r);/数据结构成绩排序 2.2.3.分数段查找菜单的设计分数段查找菜单的设计 在分数段查找菜单中包括“基础会计分数段查找 大学英语分 数段查找数据结构分数段查找返回上级菜单”等功能。每个函数体 如下: void int_BA(Stu *r);/基础会计分数段查找 void int_UE(Stu *r);/大学英语分数段查找 void int_DS(Stu *r);/数据结构分数段查找 图 2.2.2 排序菜单界面 图 2.2.3 分数段查找菜单界面 5 2.3.详细设计详细设计 2.3.1.系统

14、流程图系统流程图 2.3.2.各功能模块的设计各功能模块的设计 1)主函数模块 用函数 int main()来实现,主要功能是显示菜单,让用户根据提示选择 操作,首先定义一个指针数组(全局使用)Stu *p=(Stu *)new Stunum; 此 处 num 指学生个数, 并不是学号, 这里应用了 do-while 和 switch-case 语句 来进行循环选择,最后若用户选择“13”则保存记录并退出循环。 2)学生记录输入模块 用函数 void input(Stu *r)来实现,在主菜单选择“1”进入输入模块之 后用户需要输入所需学生个数的学生信息,包括学号、姓名、各科成绩等, 输入完成

15、之后会返回主菜单。本函数根据设计的条件判断循环来判断是否 有重复学号输入。本函数还将算出学生的总分与平均分并按学号的默认顺 输入学生人数 主菜单界面 输 入 学 生 成 绩 输 出 学 生 成 绩 按学号查询成绩 按姓名查询成绩 修 改 学 生 信 息 各 科 成 绩 排 序 按学号删除信息 插 入 学 生 信 息 按总分降序排序 各 科 成 绩 统 计 分 数 段 查 找 按 学 号 排 序 退出 退出 6 序将其与输入的原始学生记录保存的文件中去。 3)学生记录输入模块 用函数 void output(Stu *r)来实现,在系统已经录入了学生资料的前提 下,调用本函数可以输出学生资料。其

16、中 setw()控制域宽,括号里整型数 据的数值代表域宽的字符数。 4)按学号查找学生记录模块 用函数 void searchnum(Stu *r)来实现,首先提示用户输入要查找的学 生学号,再用 for 循环语句和 if 判断语句进行循环判断来进行查找, if(rm.num=n)表示找到学生记录,然后显示学生记录并跳出循环, if(rm.num!=n)表示未找到学生记录并输出提示“该学号不存在! ” 。 5)按姓名查找学生记录模块 用函数 void searchname(Stu *r)来实现,首先提示用户输入要查找的学 生姓名,再用 for 循环语句和 if 判断语句进行循环判断来进行查找, if(rm.name0=n0) 表示找到学生记录, 然后显示学生记录并跳出循环, if(rm.name0!=n0)表示未找到学生记录并输出提示“该姓名不存在! ” 。 6)按学号修改学生信息模块 用函数 void mod

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号