《数据结构课程设计-c--宿舍管理系统课程设计毕业论文.docx》由会员分享,可在线阅读,更多相关《数据结构课程设计-c--宿舍管理系统课程设计毕业论文.docx(19页珍藏版)》请在第壹文秘上搜索。
1、河南城建学院课程设计报告书专业:信息管理与信息系统课程设计名称:数据结构课程设计题目:宿舍管理查询软件班级:信管2班设计者学号:设计者姓名:同组人员:指导老师:完成时间:2016年6月12日摘要在校学生的信息管理是校园管理中的一个全要内容,随若国家扩招政策的继续实施,学生数量也不断增加、信息的不断细化、各个行业间联系的不断密切,对人事管理的要求也不断提高.如何记录和管理好学生的信息,对学生实施高效的宏观管理,对学生出入宿舍以及学生注入和迁出的信息的灵活的记录及更新,是一项繁重而艰巨的任务。关键词:c+;数据库表;宿舍信息查询:宿舍信息管理第一章开发环境和开发工具1.1 C+简介C+标准可分为两
2、部分,C+语言本身和C+标准库.C+标准库对rVisua1.C+是相当新的,实际上微软只是在发布ViSUa1.C+5.0时去除一些“bug”。标准库提供r标准的输入/输出、字符串、容器(如矢量、列表和映射等)、非数值运算(如挎序、搜索和合并等)和对数值计算的支持。应该说,C/C+包含了相对少的关键字,而且很多最有用的函数都来源于库,C+标准库实现容错和算法的部分就是ST1.oST1.是数据结构和算法的个框架,数据结构包括矢量、列表和映射等,算法包括这些数据结构的查找、拷贝和排序等。1994年7月,ANSI/ISOC+标准委员会投票决定接受ST1.为C+标准库的一部分,这个建议是根据AIeXSt
3、epanov,Meng1.ee和DavidMusser这三人的编程和软件库研究提出的。ST1.的产生是为了满足通用性的设计目标,而不是为了提高性能。1.2 开发背景随着科学技术的不断发展,计克机科学日渐成熟,其强大的功能已为人们所深刻认识,它己进入人类社会的各个领域并发挥着越来越重要的作用。采用计算机进行信息化管理已成为衡量企业管理科学化和现代化的重要标志,而人事管理的全面自动化、信息化则是其中重要的组成部分。人事管理的好坏对于企业的决策者和管理行来说都至关重要,在很大程度上影响着企业的经济效益和社会效益。因此,本文所研究的人事管理信息系统具有一定的使用价值和现实意义。1.3 开发环境本文所采
4、用的开发环境主要是在一般的PC硬件环境和WindouwsVista2003XP系统由ViSUaI+6.0编写而成,在用到MiCroSoftVisua1.C+6.0中C语言的情况下,对于查询采用了逐个查询法,程序通过调试运行实现了设计目标,并I1.经过适当完善后,将可以应用在实际中解决问题。第二章算法思想2.1系统需求分析为了实现提高高校宿舍管理部门的工作效率,充分利用资源,减少少不必要的人力,物力,和财力的支出,方便宿舍管理部门的工作人员全面地掌握学生住宿情况等目的,为宿舍管理部门开发设计专用系统软件一宿舍管理软件来进行管理学生宿舍信息,使学生宿舍信息实现标准化的管理和规能化的制度是十分必要的
5、.该程序应该具有以下功能:(1)学生的入住信息录入:(2)输出学生入住信息(分别按姓名,学号,房间号有序):(3)按给定学号,姓名,房间号查询:(4)插入新增的学生信息:(5)按学号删除学生信息。该程序执行的全过程大致为:(1)按照提示输入所需要的条件;(2)选择要实现的功能:(3)显示执行后的结果2.2系统总体设计2.2.1 系统设计目标任务:为宿舍管理人员编写一个宿舍管理查询软件,程序设计耍求:(1)采用交互工作方式(2)建立数据文件,数据文件按关键字(姓名、学号、房号进行排序(目泡、选择、插入排序等任选种)查询菜单:(用二分查找实现以下操作)(3)按姓名查询(4)按学号查询(5)按房号查
6、询(6)打印任一查询结果(可以连续操作)2. 2.2开发设计思想基于以上系统设计目标,本文在开发人事管理信息系统时遵循了以下开发设计思想: 采用现有的软硬件环境及先进的管理系统开发方案,从而达到充分利用现仃资源,提高系统开发水平和应用效果的目的。 尽量达到操作过程中的直观、方便、实用、安全等要求。 系统采用模块化程序设计方法,既便于系统功能的各种组合和修改,又便于未参与开发的技术维护人员补充、维护。 系统应具备数据库维护功能,及时根据用户需求进行数据的添加、杳找、显示、持序等操作。2.2.3系统功能模块设计本系统分为八个模块:如图2-1所示的系统功能模块图。如图2-2系统功能模块图。2-1系统
7、模块图如下请按选择操作1按姓名排序2按学号排序3按房号排序4按姓名查找5按学号查找6按房号查找7按学号插入8按学号删除2-2系统功能图如下2.3算法思想描述该程序的由多种函数实现,每个函数具有不同的功能,主要有主菜单函数,插入功能子菜单函数,杳找功能子菜单函数,学生信息录入函数,显示函数,排序函数,插入函数以及查找函数。在每个区域中会调用不同的函数来实现主要的功能。比如,在学生显示这个功能里调用显示函数:在插入功能里调用子菜单函数:在显示信息时调用排序函数先对需要输出的信心进行持序,然后再输出:在查找功能里会调用杳找函数来进行杳找,包括按照性别,学号,姓名,房间号等畲询。而最主要的函数有: 1
8、插入函数,它用尾插法来实现:排序函数,用快速排序函数来实现:查找函数,用逐个查找法;e1.se(SyStem(cis):menu();)voidChazhaoK1.irik1.is1.&D按姓名从小到大查找(采用二分杳找)(if(1.Iength=O)panduan3():e1.seintIou-O1high=1.1.ength,mid,f1.ag=O;printf(n,):printfCn);Printfr按姓名查找请输入要查找的姓名:);chara15,ch:scanf(,%s,1a);printf(*n*);whi1.e(1.ow0)1.w=mid+1.;e1.sehigh=mid1.;
9、i(fIag=D(print2(1.,mid);打印查找到的学生的信息if(panduan1.(ch)chazhao1.(1):e1.seSyStCm(cis);menu();)strcpy(1.e1.em1.1.ength,name,stud,name);1.e1.em1.1.ength,num=s1.ud.num;1.e1.em1.1.ength,room=stud,room;)1.1.ength+:f门USh(Stdin);清除文件缓冲区,当文件以写方式打开时,将级冲区内容写入文件printfr);Printf是否继续插入?:);scanf(,%c,Ach):if(ch=三,y)inse
10、rt(1);e1.seSyStemcc1.s);voidDe1.ete(1.ink1.ist&1)按学号删除该学生(inti.j,k=-1.;charch:print(r)prin1.f(n*);Printfr请输入要删除学生的学号:);scanf(,%,Astud.num);整型赋值for(i=0J1.1.ength:1+)if(stud,num-1.e1.emi.num)Printf(该学生的信息为:n)jprintfCn*):printf(%-15s-3d%7dn,1.e1.emi.name,1.e1.emi.num,I.e1.em1.i.room);k=i:for(j=kjj=1.1.
11、ength)Printf(该学生不存在n);if(k=M)1.1.ength;e1.sePrintf(A1按姓名排序:n);print1(1);disp();调用返回主界面menu();break;case 2: sort2(1.);调用按学号排序函数Printf(n);if(1.Iength=O)(PrintfC已无学生记录n):Printf(n):disp():menu();)e1.sePrintf(按学号排序:n);Print1.(I):disp():menu0;break;case 3: sort3(1.);谓用按房号排序函数printf(*n*):if(1.Iength=-O)(Pr
12、intf(已无学生记录n);printf(*n);disp():menu();)e1.sePrintf(按房号排序:n):print1(1);disp();menu();第四章测试与分析4.1使用方法(一)首先,运行程序进入“欢迎进入宿舍管理隹询系统”界面,然后进入线性表创建界面中,输入学生的信息,创建好学生信息以后单击“n”键则进入操作界面(主界面),然后可按键进行操作.(Z1.)单击数字键“1”,则为按姓名排序(三)单击数字键“3”,则为按房号排序(三)雎击数字键“5”,则为按学号查找(五)单击数字键“T,则为按学号插入电击数字键“2”,单击数字键“4”,单击数字键“6”,单击数字键“8”
13、,则为按学号排序则为按姓名查找则为按学号查找则为按学号删除系统中有如下关键词:提示:当输入的数字键为。时,退出操作:清榆入数字键(广8为操作键:请按任意键进入主界面.4.2测试数据选择姓名学号房号张三1IO1.李玉2202赵峰5102李思42024.3测试结果分析为了避免繁琐、改进算法,在些函数中调用了其它的函数。如:在按(姓名、学号、房号)查找中都调用了PandUan1.(Ch)和PandUan2(Ch)函数。在插入和删除模块中,显示学生的信息的下面总是有主界面,经过调试,运用SyS1.emrC1.s)函数清屏后,显示的只有学生的信息了,再按键即可返回主界面。本程序多次运用了disp(),menu()SyStem(cis)、ff1.ush(stdin)等函数,经过多次调试,已经很好的控制了显示的学生信息与主界面的转换。具体运行结果图如卜丁开始创建线性表*H*.*1.*w*w*.I:W1:!E否维续拔入11Xy入入入.除个学生的佶息营号:2。2否继续输入?7)、葬3个竽弟的信息冷人住别:图4-1Ez1.1.2415109Debuc333333.exe7sy否继续输入?:%该结果为主菜单界面,