学生成绩管理系统设计.docx

上传人:b****5 文档编号:11858636 上传时间:2023-04-06 格式:DOCX 页数:11 大小:150.82KB
下载 相关 举报
学生成绩管理系统设计.docx_第1页
第1页 / 共11页
学生成绩管理系统设计.docx_第2页
第2页 / 共11页
学生成绩管理系统设计.docx_第3页
第3页 / 共11页
学生成绩管理系统设计.docx_第4页
第4页 / 共11页
学生成绩管理系统设计.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

学生成绩管理系统设计.docx

《学生成绩管理系统设计.docx》由会员分享,可在线阅读,更多相关《学生成绩管理系统设计.docx(11页珍藏版)》请在冰豆网上搜索。

学生成绩管理系统设计.docx

学生成绩管理系统设计

学生成绩管理系统

一、简介

1.设计目的:

加强自己在课程中学习的相关算法和方法的具体应用,使自己进一步熟悉理解和掌握树的逻辑结构和存储结构的知识,进一步掌握在C或其他语言中应用这些算法的能力。

并且在此基础上利用其进行编程与设计,实现程序的设计,进一步提高使用理论知识指导解决实际问题的能力,并在此基础上强化自己的实践意识,提高自己的实际动手能力和创新能力。

2.问题的描述:

设计一个班级学生管理系统,希望可以处理每个学生的学习情况信息。

学生学习情况信息包括学号、姓名、年龄、性别、班级、联系方式等,并能使管理人员通过界面完成对班级、学生信息的录入及对数据的查找、浏览。

可以实现对学生的成绩的输入,输出,保存,修改,排序。

可以添加和删除学生的信息。

输入:

一组学生的信息,包括:

学号、姓名、年龄、性别、班级、联系方式,成绩。

输出:

输出到屏幕,保存到文件。

二、数据结构的设计:

定义一个单链表,储存学生的基本信息:

学号、姓名、年龄、性别、班级、联系方式,成绩等。

structstudent

{

charnum[10];//学号

charname[20];//姓名

charsex[4];//性别

intage;//年龄

charClass[4];//班级

chartele[11];//电话

intcomputer;//计算机成绩

intmath;//数学成绩

intEnglish;//英语成绩

inttotle;//总成绩

};

typedefstructLnode

{

structstudentdata;

structLnode*next;

}LNode,*LinkList;

对学生信息的操作:

输入,输出,保存,修改,排序,添加,删除。

voidAdd(LinkListL)函数,输入:

从文件读入,

fp=fopen("student","wb");

或从键盘输入。

voidSave(LinkListL)保存,输出写入到文件。

fp=fopen("student","ab+");

voidDisp(LinkListL),输出到屏幕。

三、功能(函数)设计:

对于这次班级学生成绩管理系统的设计,总体上划分为三个模块实现,功能模块图,函数功能说明,具体功能描述如下:

1、学生管理模块:

主要实现的功能为登记、修改某班某个学生的基本情况、删除某班某个学生的基本情况。

2、成绩管理模块:

主要实现的功能为登记、修改某个学生某门课的成绩。

3、查询、浏览模块:

主要实现的功能为查找、浏览每个学生的基本信息;查找、浏览每个学生的全部成绩信息。

四、界面设计:

⑴、首先进入界面,显示功能菜单;

⑵、输入你所选择的功能代号:

输入1:

表示登记学生的信息;

若输入学生的学号为0,则返回选择菜单界面。

输入2:

表示删除一个学生的所有信息;

1、按学号删除;

2、按姓名删除。

输入3:

表示查询一个学生的信息;

①、按学号查询;

②、按姓名查询。

输入4:

表示对某一个学生的成绩进行修改;

输入5:

表示查看所有学生的信息;

输入6:

表示对所有学生的总成绩由高到低进行排序;

输入7:

表示保存所有学生的信息;

输入8:

显示帮助信息,即显示功能菜单;

输入0:

表示退出系统。

五、程序设计:

1、主函数:

voidmain()

①、函数功能:

利用函数调用的功能,实现、输出程序设计的最终想要的结果,即是形成一个学生信息管理系统,对所有学生及其所有的信息进行管理。

②、在程序运行的过程中,调用了添加、删除、查询、修改、显示、保存等函数。

③、程序流程图:

2、添加函数:

voidAdd(LinkListL)

①、函数功能:

登记学生的所有相关信息(学号、姓名、性别、年龄、电话、成绩等);

②、程序流程图:

3、删除函数:

voidDel(LinkListL)

①、函数功能:

删除某个学生的所有相关信息;运行的过程中,调用了LNode*Locate(LinkListL,charfindmess[],charnameornumorClass[])函数。

②、程序流程图:

4、查询函数:

voidQur(LinkListL)

①、函数功能:

查询某个学生的所有信息;运行的过程中,调用了LNode*Locate(LinkListL,charfindmess[],charnameornumorClass[])函数。

②、程序流程图:

5、修改函数:

voidModify(LinkListL)

①、函数功能:

对某个学生的成绩进行修改;

②、程序流程图:

6、排序函数:

voidsort(LinkList&L)

①、函数功能:

利用冒泡排序的思想,对学生的成绩进行由高到低的排序;

②、程序流程图:

7、保存函数:

voidSave(LinkListL)

①、函数功能:

保存所有登记的学生的所有信息;

②、程序流程图:

8、显示函数:

voidDisp(LinkListL)

①、函数功能:

显示系统中存在的学生的相关信息;

②、程序流程图:

六、运行与测试:

1、测试的数据及其结果:

⑴、进入学生成绩管理系统界面:

⑵、输入测试的数据:

学号姓名性别年龄班级电话计算机成绩数学成绩英语成绩

第一个学生:

111111111第二个学生:

222222222

第三个学生:

333333333第四个学生:

444444444

第五个学生:

555555555

显示学生信息登记的结果:

⑶、测试的数据:

删除一个学生的所有信息。

删除:

学号1。

显示删除后的结果:

⑷、测试的数据:

查询一个学生的所有信息。

查询:

学号2。

显示查询的结果:

⑸、测试的数据:

对一个学生的成绩进行修改。

修改:

学号3,计算机、数学、英语成绩分别为8、9、4。

显示修改后的结果:

⑹、对学生的总成绩采用冒泡排序:

⑺、保存所登记的学生的所有信息:

2、运行与测试期间遇到的问题及其解决办法。

(1).问题1:

运行时,在没有头文件时,用了exit

(1)语句,出现了错误;

解决办法:

添加头文件

(2).问题2:

缺少p->data.totle=p->puter+p->data.math+p->data.English;,发现总成绩没有发生变化;

解决办法:

添加p->data.totle=p->puter+p->data.math+p->data.English;

七、结论:

(1)在输入函数中设了一个无限循环,可以输入无数个学生的成绩信息,当学号为0的时候则停止输入。

(2)输入太多个学生的成绩时,屏幕显示不能控制为一页一页显示,所以为了方便起见,不要输入太多记录,十七左右为最佳。

(3)在输入选项时不能输入字母,否则会死循环,建议不要乱输字母。

(4)刚开始时,先把成绩按总分排序,再插入一个学生的成绩,执行显示功能,虽然插入的学生的成绩能正常插入,但该学生的名次为0。

后来,在插入成绩之后,调用排序函数,把所有成绩重新排序一次。

八、设计后的思考:

刚开始学习数据结构这门课时,感觉很难,看书看不懂,老师讲课也听不懂,做作业也不会做,好像什么都学不好,前途一片渺茫。

为了学好这门课,为了更好的学习以后的专业知识,为以后的工作打下基础,我必须付出更多的努力。

从那以后,我就将大部分的时间花在学习这门专业课上,加倍努力,除了多看课本,专心听课外,还额外的看了相应的课外资料书,遇到不懂得就问同学,与同学互相讨论。

经过一个多学期的奋战,我终于看到了一点点希望:

发现自己开始掌握了相应的一部分知识,例如链表、栈和队列、树以及图等知识,而且还学会了磁盘文件保存的知识。

尤其是经过了这次的课程设计,我不仅学会了知识,还学会了将专业知识与实际问题联系起来,并且运用专业知识去解决实际问题。

虽然这次课程设计,花了我不少的的时间,但是更重要的是,正是这些时间,让我见识到了数据结构这门课知识的重要性。

通过这次课程设计,我还得到了一个体会,做一个程序,或者开发一个软件,应该着重从它的后台制作入手,不能做出一个中看不中用的程序或者软件。

我相信,这次的课程设计会为我以后从事计算机工作打了一个小小的开头。

九、参考文献:

1、严蔚敏等.数据结构(C语言版).清华大学出版社2004

2、谭浩强.C语言程序设计.清华大学出版社.2002

3、李春保.数据结构教程上机实验指导.清华大学出版社.2005

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

当前位置:首页 > 解决方案

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1