




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、师范学(本科)课程设计说明数据结构学生信息管理系统俞雪峰、刘超、石富强、汪洋1310421007 1310421115 1310421057、 1310421011完成日期2014年 12 月 28号专业班级2013级软件工程(1)班指导教师王群芳1.1问题的提出1.2国内外研究的现状1. 3任务与分析2程序的主要功能2.1创建功能2.2显示功能2.3查找功能2.4排序功能2.5添加功能2.6修改功能2.7删除功能2.8退出系统程序运行平台总体设计程序类的说明模块分析6.1创建模块6.26.36.46.56.66.7显示模块查找模块排序模块添加模块修改模块删除模块6.8退出模块系统测试结论致谢
2、参考文献4.1011131313141516182020,2.6.28.28.8随着计算机的普及,网络时代的到来,社会信息化程度不断提高,信息管理 与信息系统越来越受人们所青睐,由此产生信息总量的剧增,信息更新速度的加 快,使得管理的负担越来越重。如何快速查找学生的信息,成为摆在所有管理工 作者面前的一大难题。本系统为学校学生信息管理系统,该系统进行了深入的分 析和研究,提出了学生信息管理的理论依据和实现的方法。该系统分析了学生的基本信息,利用C+的类与对象的关系编程实现了对每个学生信息的基本管理系 统,该系统具有对学生信息的显示、添加、查找、修改和删除等功能。关键词:管理系统;计算机;学生;
3、信息;功能1.1问题的提出在现代化的学生信息管理中,学生信息管理系统有着十分重要的作用,然而, 用大型软件系统来于学校的小型事件,不啻于“杀鸡用牛刀” ,因此小型的的软 件对于这种学校的学生成绩管理自然有十分重要作用。 某学校出于这种目的制作 了这个学生信息管理系统。1.2国内外研究的现状信息管理是学校管理的一个重要内容,随着时代的进步,学校也逐渐变得庞大 起来如何管理好学校内部学生的信息,成为学校管理中的一个大的问题.在这种 情况下,一个可以规范化,自动化的学生信息管理系统就显的非常必要.最初的信息管理,都是靠人力来完成的.当学校人数比较小的时候,人力可以 完成,随着学生人数越来越多,学校依
4、然维持着用人力进行管理,必然会造成工作 效率低,工作错误增高的问题.学生信息管理系统就是把分散的学生信息实行统一 ,集中,规范的收集管理, 建立分类编号管理,电脑存储查询以及防火,防潮,防蛀防盗等现代化,专业化的管 理系统,为学校解除后顾之忧.学生信息管理系统为学校提供学生信息查询,录入,修改,删除等功能 .1.3任务与分析任务:本课题主要的任务是定义学生类 Stude nt,其中包含学生姓名、学号、性别 或更多门课程的成绩以及对这些成员的操作,然后要定义Stude nt的对象数组,录入学生信息并显示到屏幕,同时保存到文件;可以从文件读取数据并查询、修 改和统计学生信息。并且,在录入信息前要有
5、提示信息,屏幕输出和文件存取时 可使用、运算符重载或用I/O流对象引用作参数的成员函数实现。 分析:然后抽象出各要完成上面的任务,首先根据要解决的问题是分析设计类图, 个类的数据成员和函数成员,然后进行详细编码,在主函数中创建类的对象,调 用适当的成员函数或全局函数实现相应的功能。最后再对软件进行测试。2程序的主要功能2.1创建功能录入学生基本信息,包括学号,姓名,性别,年龄,数据结构成绩。2.2显示功能显示所有学生的主要信息包括学号,姓名,性别,年龄,数据结构成绩。2.3查找功能根据你键入的学生姓名,显示其学号,性别,年龄,数据结构成绩等详细信 息,或者键入的学生学号,显示姓名,性别,年龄,
6、数据结构成绩等详细信息!2.4排序功能对学生的基本信息,包括学号,姓名,性别,年龄,数据结构成绩等进行排 序处理,排序包括插入排序,冒泡排序和选择排序。2.5添加功能添加学生基本信息,包括学号,姓名,性别,年龄,数据结构成绩等。2.6修改功能对学生的基本信息进行修改,包括学号,姓名,性别,年龄,数据结构成绩 等。2.7删除功能能够对一个学生的信息进行删除可按照信息位置进行删除。2.8退出系统能够安全退出学生成绩管理系统。3程序运行平台VC+6.0。具体操作如下:(1).进入visusal c+6.0开发环境。单击Next TipA按钮可显示下一条信息,单 击Close按钮关闭如图3.1所示的帮
7、助窗口,进入visusal c+6.0开发环境主窗口。r卸w示MHlMl 呼 M1& 卿回 IM 嘤 liL. yP Cja 吉“1)JLEF Tim nmana*! ivir i. CEiti-:iL UHun 円u m Llvai -find Lr bfilBi Cbaosd- Ouraid.14 “m、齢 Totls utn- clLcta CMwndi. Chanir thi Drli-! id Coaiindr ntnccar. aL MsuJ-I (uuiic 1Kift Tuj U4 dFl rnii ri hd | 3 *lnclur flriHr-l np ua-H Lth
8、71 lypHdvP flrucCLnt I; t=uK-ffaAhfiaS).SJft.-: T n? M _ Lpii ;FarCE-1;l tlncludp IrlHr*! np uR Lth 71 lypHdvr t.LrucCLnt L= rnuKc-flaAheastsu.-: d n L _ Lpii ;fdrCE-1:l-L-ltfeJ-+)1lnt 14-Fhar KMefE*hi Chfr HaFt|; JnE =Inc SCctUL即 、心吐u申 tuprdtF structMMSO 迩h.匚+ 亠zl *三、T带a芦1 丄L.*tWhl5|人字主的5厝,H孔tt那 年誚
9、,曲ft剜.U rt?L.djtPi .idL.d?t*b-njFrL .4*tjl|.?EH-.d-9tj|l .ttL.djt4i .Hacni r;uoid dl-(*h-astudent U)iirjtZnK辟二SS和孚商 丸陵申h辭二HA图3.6运行程序(5)选择Build Compile学生成绩管理系统.exe连接学生成绩管理系统程序,如果有错误显示,则排除这些错误直到没有,那样就已经建立了学生成绩管理系统.exe可执行文件。选择Build Execute.exe运行学生成绩管理系统程序MBS+hfi 41LLA UO J|GZ|其结果如图3.7所示。HLMJ AMD 工40 4f
10、lLW 工WBQUlCJH吉* 三|i卢mrimbrv三II .hpEJdC-K *胡吾|嶄:I蠶rIE-19tln sai-t_-Sbcar4EbiM4Int IhJfJ; MuZ rnuK-1-W tuuECC-i_H CbUt L.le n;for(i=1;iv=L.le n;i+)H.coutvv请输入学生的学号、姓名、性别、年龄、数构成绩:cin L.datai.idL.datai. nameL.datai.sexL.datai.ageL.datai.SGs core;6.2显示模块显示模块将输出所有学生的成绩等信息。 其示意图如下:调用dis;play 函ir显示学生信息图6.2创
11、建示意图其代码如下:void dis play(stude nt &L)for(i nt i=1;i=L.le n;i+)coutvv该学生的学号、姓名、性别、年龄、数构成绩e ndl;coutvvL.datai.idvvL.datai. namewL.datai.sexvvL.datai.agevv L.datai.SGscore;coutvve ndl;6.3查找模块首先由用户输入要查找的学生学号或者姓名,然后系统用查找函数查找,然后系统就调用输出函数,输出所查找的学生信息。其示意图如下:图6.3查找示意图其代码如下:int search(stude nt &L)int i,j;int n
12、um1;char nu m25;coutvv0.退出查找系统endl;coutvv1.按学号查找endl;cout2.按姓名查找j;while(j2)coutvv只能选择0-2,请重新选择:H.cinj;switch(j)case 0:return 0;case 1:coutvv请输入学生学号:H.cinnum1;for(i=1;iv=L.le n;i+)if(L.datai.id=nu m1)coutvv找到了该同学! vve ndl;e ndl;”vvL.datai. namew”cout该同学的学号、姓名、性别、年龄、数构成绩为:coutL.datai.idL.datai.sexL.da
13、tai.age”vvL.datai.SGscorevve ndl;return i;else if(i=L.le n)cout未查到! num2;for(i=1;i=L.le n;i+)if(strc mp (L.datai. name, nu m2)=0)coutvv” 找到了该同学! e ndl;cout该同学的学号、姓名、性别、年龄、数构成绩为:e ndl;coutL.datai.idL.datai. namew”L.datai.sexL.datai.ageL.datai.SGscoree ndl;return i;else if(i=L.le n)cout未查到! endl;break
14、;6.4排序模块对保存的学生信息按数据结构成绩依次进行排序, 包括插入排序,冒泡排序,图6.4排序示意图其代码如下:void sort_SGscore1(stude nt &L) int i,j;for (i=2;i=L.le n;i+) L.dataO=L.datai;for(j=i-1; L.data0.SGscorevL.dataj.SGscore; j-)L.dataj+1=L.dataj;L.dataj+1=L.data0;void sort_SGscore2(stude nt L) int i,j;for(i=1;i=i+1;j-)if(L.dataj.SGscorevL.data
15、j-1.SGscore) L.data0=L.dataj;L.dataj=L.dataj-1;L.dataj-1=L.data0;no swa p=0;if(no swa p)break;void sort_SGscore3(stude nt L) int i,j;for(i=1;i=L.le n;i+)int mi n=i;for(j=i+1;j=L.le n;j+)if(L.dataj.SGscore S.idS .n ameS.sexS.ageS.SGscore;if (L.le n=maxsize )coutvv表已满,无法插入! ; return 0; for(i=L.le n;i=
16、1 & L.datai.idS.id;i-)L.datai+1=L.datai;L.datai+1=S;L.le n+;coutvv插入成功!;return 1;H.6.6删除模块首先由用户输入要删除的单个学生信息位置,然后调用删除函数,删除该其代码如下:int delet(stude nt & L,i nt i)int j;if (L.le nv i|iv=0 ) coutvv表无此位置,无法删除!; return 0; for(j=i;jv=L.le n;j+)L.dataj=L.dataj+1;L.le n-; return 1;6.7修改模块首先由用户输入要修改的学生的学号或姓名, 然
17、后调用修改函数,对学生信息进行修改,包括学号,姓名,性别,年龄,数据结构成绩。其示意图如下:图6.7修改示意图其代码如下:void modify(stude nt &L) int i,x,a=0;int id;char n ame50;char sex50;int age;int SGscore;coutvv请选择你要修改的学生学号;cin id;e ndl; e ndl;e ndl; e ndl;coutvv请输入你要修改的学生信息endl; cout x;switch(x)case 1:for(i=O;ivL.le n;i+)if(id=L.datai.id)coutvv请输入新学号; c
18、i n id;L.datai.id=id;a=1;if(a=O)coutvv对不起你要改的名字不存在;break;case 2:for(i=O;ivL.le n;i+)if(id=L.datai.id)coutvv请输入新姓名; cinn ame;strc py(L.datai. name, name); a=1;if(a=O)coutvv对不起你要改的名字不存在;break;case 3:for(i=O;ivL.le n;i+)if(id=L.datai.id)coutvv请输入新性别; cin sex;strc py(L.datai.sex,sex);a=1;if(a=O)coutvv对不
19、起你要改的名字不存在;break;case 4:for(i=O;ivL.le n;i+)if(id=L.datai.id)coutvv请输入新年龄; cin age;L.datai.age=age;a=1;if(a=O)coutvv对不起你要改的名字不存在;break;case 5:for(i=O;ivL.le n;i+)if(id=L.datai.id)coutvv请输入新数构成绩; cin SGscore;L.datai.SGscore=SGscore; a=1;if(a=O)coutvv对不起你要改的名字不存在;break;6.8退出模块首先由用户选择退出程序选项,由系统调用退出模块的程
20、序,达到退出系统的目的。7系统测试首先进入VC+6.0,打开工程学生信息管理系统.dsw,然后进入源程序,接 着选择Build下的Execute学生信息管理系统.exe即可运行程序。在程序开始时如图7.1所示。E人学习立莒居裾结构倚理设计卵耀结构心于息息息进息息息和 亠亘一目一一昌崟更一豆一耳侮 WJS 0 12 3 4 5 6 7欢序trfl-T捜狗拼音输入法半:图7.1进入系统图7.1表示已经成功进入学生信息管理系统。E:学习文 g埠结构碍理设汁1 Deb明遨据结徇心e序trfl-T鬻息息息进息息息族 勇亲烂尼尼曽4亠亘一一呈一口由轅创展查稽雙 户980229026912勇男女三四红13
21、511数数数年年年0 、别别别3HS甘握姓姓 生”* 学号号号 1WHI- 7 生生成沪 择入番 请嘗请请创请搜狗拼音输入法半:图7.2创建功能图7.2表示实现了程序的创建功能。E:学习文档鋸结构碍理设汁1 Debug 结构心e序 tr fl -T窺息息息进息息息和 酹系亠一豆一豆一一昌3亠-豆一豆一一R馬 泉创展查箱熨9 2 68 9 90 0 12 2 2男男女三四红13 5数数数别别别 i主生主 TW 1 I.生* * *学号号号述1曇盂于0123456 7欢门录的的的!叮号1号生生成沪学.一一 (sli的二择入人人人番生-选选学:一一请嘗请请创请该半5 人 A输 (# 澤拼 选狗1图7
22、.3显示功能图7.3表示实现了程序的显示功能。28E:学习文档廖 结构课理设汁1 Deb四遨据结徇心e男男女13 5数构成绩89数构成绩92数构咸绩96数构成绩为:92别别别3H1虧轟覆女 J J J系n 毗总姓姓姓 用生:、 便学号号号 迎ist盂率 欧门录的的的 7匚1 :记生生鑫沪学 一 一择人入入入表塞 - I- - -1 - 1 -I * I- P -拥男3-霾時1 号:RS号3厂入 -杳号窖学番千姓择入龙于0S音h请请请请请创请该rrJL -str Jy- _r- - w遡退*;3曹同选狗 1图7.4查找功能 图7.4表示实现了程序的查找功能。E:学习文档傲翳结槪课哩设汁1 Deb
23、ug 结构心e年龄、数构成绩为:2692年龄、数构成绩20 89年龄、数构成绩2692年龄、数构成绩21 96惭男3名四:姓李1 号:4孥籍衮盂千号3- 找杳香匚生凰于 杳_号名学番 蚤畅;: 请乩醫養该统系0 tttWtcU 学择氐出入泡生S门入4输 (# 澤拼 选狗1图7.5排序功能图7.5表示实现了程序的排序功能。30E:学习文档V数据结标诔程设计1D曲旳锻購结构 e0退岀:舒蜿 i-SA5w8itSb(0-3)2请选拇(g-3)0该学生的学号、:1该学生的学号、:3该学生的学号、:5请选择(0-7)5I费驚”学生的学号、姓名 聖疆*、響,性别、 该学生的学筑I亙轟、3军四勇该学生的学苗
24、、癘、mij. 该学生的学碁、A7 王二 勇 请选择(0-7) 搀狗箱音输入法半:2.目3.K、性别、李四勇年龄、数构成绩20年龄、数构成绩2092年胡,数构成绩Z198X性别、年龄、数构成绩:7王二男20 99Z0年龄、20做21Z0绩绩绩绩 成9成2成&成y勾8图7.6添加功能 图7.6表示实现了程序的添加功能。图7.7删除功能 图7.7表示实现了程序的删除功能。35E:学习文歸屣结构课理设汁1 DebugISl结构心亡EnPttJb.3 号息 学信7为 t息- 曙王 S 和该7 醤 AM 蒐仃I. - J.7绩绩9成2成68 9 9数数性别、女 21年龄、20改改号 4名三名四香mF 李
25、姓小半UtC人 A输 (# 选狗1图7.8修改功能 图7.8表示实现了程序的修改功能。E:学习文洁澈齬结槪课理设计1 Debug 结构心e绩绩9成2成*08构9构9数数201?榔213号息学信7改改号翕龄构 门姓聲数 要要生生生生生-盖于 入改改改改改择入生 亚请请请H皐请请该?数畀舉1IJ- 412 3 4 5 5-*1 * i 选旗 暫3 D 请t,e 5 7 7k-0 0 y( mJrJ a 羸= 选能R 请只M搜狗拼音输入法半:图7.9退出系统图7.9表示实现了程序的退出功能。通过上述测试,本系统实现了对学生一系列信息的显示功能,能够显示已有 学生的信息;实现了对学生的添加功能,能够添
26、加另外学生的信息;实现了对已 有学生信息的查找功能,能够根据学生的姓名或学号来查找学生的信息;实现了 对学生信息的修改,删除等功能,同时能够避对没有的学生进行准确的判断。8结论系统是以Visual C+6.0为开发工具编的程序。本系统实现了对学生信息的 显示,添加,查找,修改和删除的功能。第一周结束的时候,我们感觉自己收获 挺大的,从一开始的迷茫,不知道从何下手到把程序中的几个模块编写出来,心里挺开心的。但是,到了第二周,我由不得不再次陷入困境。在整个程序的编写 过程中。最难的就是修改和删除这两个模块, 这也是我们第二周要解决的重点问 题。开始编写修改和删除时,很头疼,去向其他人寻求帮助,在别人的帮助和提 示下,我编完了修改程序,但编译时老出错,修改后的内容将文本内的信息全部 覆盖了。困难之时,在百度的帮助之下,完成了修
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年园林景观工程施工安全防护措施合同
- 用材料合同范本
- 2025年度智能化社区房地产营销推广服务合同范本
- 2025年度互联网平台短期借款合同(电商生态圈建设)
- 2025年度床垫行业环保认证采购合同
- 2025年度智慧城市建设项目合同管理细则
- 3 认识方向 第二课时(教学设计)-2023-2024学年二年级下册数学苏教版
- 2025年巷道式立体停车设备行业深度研究分析报告
- 2025年汽车零部件研发设计合作协议
- 测绘股份合同范本
- 传帮带培训课件
- 《和大人一起读》试题及答案共4套
- 第一课 踏上强国之路 复习课件 统编版道德与法治九年级上册
- 陈赫贾玲小品《欢喜密探》台词剧本
- 雨污水管道施工工艺
- 2023智能低压配电箱技术条件
- 加油站地罐交接及容积表关系
- 新教材人教版高中数学必修第二册全册教案
- 班(组)战斗动作训练教案
- 农产品电商运营-完整全套课件
- 唐河县泌阳凹陷郭桥天然碱矿产资源开采与生态修复方案
评论
0/150
提交评论