学生成绩管理系统的设计与实现.docx

上传人:小飞机 文档编号:5173290 上传时间:2023-06-10 格式:DOCX 页数:12 大小:359.62KB
返回 下载 相关 举报
学生成绩管理系统的设计与实现.docx_第1页
第1页 / 共12页
学生成绩管理系统的设计与实现.docx_第2页
第2页 / 共12页
学生成绩管理系统的设计与实现.docx_第3页
第3页 / 共12页
学生成绩管理系统的设计与实现.docx_第4页
第4页 / 共12页
学生成绩管理系统的设计与实现.docx_第5页
第5页 / 共12页
亲,该文档总共12页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《学生成绩管理系统的设计与实现.docx》由会员分享,可在线阅读,更多相关《学生成绩管理系统的设计与实现.docx(12页珍藏版)》请在三一办公上搜索。

1、题目:学生成绩管理系统的设计与实现、简介1. 设计目的:加强自己在课程中学习的相关算法和方法的具体应用,使自己进一步熟悉理解和掌 握树的逻辑结构和存储结构的知识,进一步掌握在C或其他语言中应用这些算法的能力。并 且在此基础上利用其进行编程与设计,实现程序的设计,进一步提高使用理论知识指导解决 实际问题的能力,并在此基础上强化自己的实践意识,提高自己的实际动手能力和创新能力。2. 问题的描述:设计一个班级学生管理系统,希望可以处理每个学生的学习情况信息。学生学习情 况信息包括学号、姓名、年龄、性别、班级、联系方式等,并能使管理人员通过界面完成对 班级、学生信息的录入及对数据的查找、浏览。可以实现

2、对学生的成绩的输入,输出,保存, 修改,排序。可以添加和删除学生的信息。输入:一组学生的信息,包括:学号、姓名、年龄、性别、班级、联系方式,成绩。输出:输出到屏幕,保存到文件。二、数据结构的设计:定义一个单链表,储存学生的基本信息:学号、姓名、年龄、性别、班级、联系方 式,成绩等。struct studentcharnum10;/学号charname20;/姓名charsex4;/性别intage;/年龄charClass4;/班级chartele11;/电话int computer;/计算机成绩intmath;/数学成绩intEnglish;/英语成绩inttotle;/总成绩;typede

3、f struct Lnodestruct student data;struct Lnode *next;LNode,*LinkList;对学生信息的操作:输入,输出,保存,修改,排序,添加,删除。void Add(LinkList L)函数,输入:从文件读入,fp=fopen(student”,wb”);或从键盘输入。void Save(LinkList L)保存,输出写入到文件。fp=fopen(student”,ab+);void Disp(LinkList L),输出到屏幕。三、功能(函数)设计:对于这次班级学生成绩管理系统的设计,总体上划分为三个模块实现,功能模块图, 函数功能说明,

4、具体功能描述如下:1、学生管理模块:主要实现的功能为登记、修改某班某个学生的基本情况、删除某 班某个学生的基本情况。2、成绩管理模块:主要实现的功能为登记、修改某个学生某门课的成绩。3、查询、浏览模块:主要实现的功能为查找、浏览每个学生的基本信息;查找、浏 览每个学生的全部成绩信息。、界面设计:、首先进入界面,显示功能菜单;、输入你所选择的功能代号:输入1:表示登记学生的信息;若输入学生的学号为0,则返回选择菜单界面。输入2:表示删除一个学生的所有信息; 、按学号删除; 、按姓名删除。输入3:表示查询一个学生的信息; 、按学号查询; 、按姓名查询。输入4:表示对某一个学生的成绩进行修改;输入5

5、:表示查看所有学生的信息;输入6:表示对所有学生的总成绩由高到低进行排序;输入7:表示保存所有学生的信息;输入8:显示帮助信息,即显示功能菜单;输入0:表示退出系统。五、程序设计:1、主函数:void main() 、函数功能:利用函数调用的功能,实现、输出程序设计的最终想要的结果, 即是形成一个学生信息管理系统,对所有学生及其所有的信息进行管理。 、在程序运行的过程中,调用了添加、删除、查询、修改、显示、保存等函数。 、程序流程图:2、添加函数:void Add(LinkList L)、函数功能:登记学生的所有相关信息(学号、姓名、性别、年龄、电话、成绩等)、程序流程图:3、删除函数:voi

6、d Del(LinkList L) 、函数功能:删除某个学生的所有相关信息;运行的过程中,调用了 LNode*Locate(LinkList L,char findmess,char nameornumorClass)函数。 、程序流程图:4、查询函数:void Qur(LinkList L)、函数功能:查询某个学生的所有信息;运行的过程中,调用了LNode* Locate(LinkListL,char findmess,char nameornumorClass)函数。5、修改函数:void Modify(LinkList L)、函数功能:对某个学生的成绩进行修改;、程序流程图:6、排序函数

7、:void sort(LinkList &L) 、函数功能:利用冒泡排序的思想,对学生的成绩进行由高到低的排序; 、程序流程图:7、保存函数:void Save(LinkList L) 、函数功能:保存所有登记的学生的所有信息; 、程序流程图:开始8、显示函数:void Disp(LinkList L)、函数功能:显示系统中存在的学生的相关信息;、程序流程图:while (p)输出信息结束六、运行与测试:1、测试的数据及其结果:(1)、进入学生成绩管理系统界面:C - PriagmA FilesXSiGrusuft Visual StudiuCuuLurLXSSDev98BJ.rLDcbuig

8、bli.学生成绩管理系统 提示=文件已经打开-正在导入记录=淀示3己录寻入亢毕-共寻入h类i己录.欢道由入学生成渍菅埋券功123456780A除询改示序行取N翦登修显醇荻退_否巫下-巫巫 FileslicrosoftVisual StudLoYCouLOiiXlSDevdSkBiiiYDebugXo. .回显示结果、测试的数据:删除一个学生的所有信息。删除:学号1。显示删除后的结果:、测试的数据:查询一个学生的所有信息。查询:学号2。显示查询的结果:、测试的数据:对一个学生的成绩进行修改。修改:学号3,计算机、数学、英语成绩分别为8、9、4。显示修改后的结果:你你你你请ii请T1号一是Jd.3

9、 3 3未是是 w育 的具些&英 修的的的 H IAIAIA六 揄al萼.亍:3 一分分提示:资料廖改成功?假改后的结果为:昱示站果学号姓名性别年龄班级234电话计算机教学英话总.成绩6211215: rC: PrograM Files Microsoft Visual Studi.oLCoBncm.MSDe798BiiiDebugldata.totle=p-puter+p-data.math+p-data.English;, 发 现总成绩没有发生变化;解决办法:添加 p-data.totle=p-puter+p-data.math+p-data.English;七、结论:(1) 在输入函数中

10、设了一个无限循环,可以输入无数个学生的成绩信 息,当学号为0的时候则停止输入。(2) 输入太多个学生的成绩时,屏幕显示不能控制为一页一页显示, 所以为了方便起见,不要输入太多记录,十七左右为最佳。(3) 在输入选项时不能输入字母,否则会死循环,建议不要乱输字母。(4) 刚开始时,先把成绩按总分排序,再插入一个学生的成绩,执行 显示功能,虽然插入的学生的成绩能正常插入,但该学生的名次为0。后来,在 插入成绩之后,调用排序函数,把所有成绩重新排序一次。八、设计后的思考:刚开始学习数据结构这门课时,感觉很难,看书看不懂,老师讲课也听 不懂,做作业也不会做,好像什么都学不好,前途一片渺茫。为了学好这门

11、课, 为了更好的学习以后的专业知识,为以后的工作打下基础,我必须付出更多的努 力。从那以后,我就将大部分的时间花在学习这门专业课上,加倍努力,除了多 看课本,专心听课外,还额外的看了相应的课外资料书,遇到不懂得就问同学,与同学互相讨论。经过一个多学期的奋战,我终于看到了一点点希望:发现自己开始掌握 了相应的一部分知识,例如链表、栈和队列、树以及图等知识,而且还学会了磁 盘文件保存的知识。尤其是经过了这次的课程设计,我不仅学会了知识,还学会 了将专业知识与实际问题联系起来,并且运用专业知识去解决实际问题。虽然这次课程设计,花了我不少的的时间,但是更重要的是,正是这些 时间,让我见识到了数据结构这门课知识的重要性。通过这次课程设计,我还得到了一个体会,做一个程序,或者开发一个 软件,应该着重从它的后台制作入手,不能做出一个中看不中用的程序或者软件。我相信,这次的课程设计会为我以后从事计算机工作打了一个小小的开 头。九、参考文献:1、严蔚敏等.数据结构(C语言版)清华大学出版社20042、谭浩强.C语言程序设计.清华大学出版社.20023、李春保.数据结构教程上机实验指导.清华大学出版社.2005

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号