c++课程设计保安排班系统.doc
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《c++课程设计保安排班系统.doc》由会员分享,可在线阅读,更多相关《c++课程设计保安排班系统.doc(30页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、【精品文档】如有侵权,请联系网站删除,仅供学习与交流c+课程设计保安排班系统.精品文档.计算机学院网络工程专业程序设计综合课程设计报告(2010/2011学年 第一学期)学生姓名: 秦佳学生班级: 网络工程102001学生学号: 201020030112指导教师: 谢丽萍 2011年 12月30日目 录一、课程设计的目的2二、 课程设计的任务3三 系统设计方案33.1系统详细描述33.2模块结构图4四 系统实现与测试44.1 主菜单44.1.1主菜单流程图44.1.2主菜单代码54.1.3主菜单测试64.2排班模块的实现74.2.1排班流程图74.2.2排班模块代码74.2.3排班模块测试10
2、4.3输入资料模块134.3.1输入资料模块流程图134.3.2输入资料模块代码134.3.3输入资料模块测试154.4查询模块实现154.4.1查询模块流程图154.4.2查询模块代码164.4.3查询模块测试174.5删除资料模块174.5.1删除资料流程图174.5.2删除资料代码184.5.3删除资料测试194.6修改资料模块194.7查询工龄模块的实现204.7.1查询工龄流程图204.7.2查询工龄代码214.7.3查询工龄测试214.8查询休息时间模块的实现224.8.1查询休息时间流程图224.8.2查询休息时间代码234.8.3查询休息时间测试234.9输出模块实现234.9
3、.1输出模块代码244.9.2输出模块测试244.10修改密码模块实现254.10.1修改密码流程图254.10.2修改密码代码264.10.3修改密码测试274.11退出模块实现284.11.1推出模块代码28五 程序调试中出现的问题及解决方法29六 参考文献29七 附录(源代码)29一、课程设计的目的1) 学习综合运用C高级语言课程和其他先修课程的知识,提高分析和解决实际问题的的能力,进一步巩固、加深和拓宽所学的知识;进一步加强结构化程序设计的思想,加深对高级语言基本语言要素和控制结构的理解。2) 全面系统的学习面向对象程序设计的基本概念、基本语法和编程方法;独立完成有一定工作量的程序设计
4、任务,同时强调好的程序设计风格。3) 掌握程序设计中的常用算法和C语言的编程技巧和上机调试程序的方法。4) 在参与一系列子项目的实践过程中,提高如何综合运用所学知识解决实际问题的能力,以及获得相关项目管理和团队合作等众多方面的具体经验。二、 课程设计的任务学校有7名保安人员:赵、钱、孙、李、周、吴、陈。由于工作需要进行轮休制度,一星期中每人休息一天。预先让每一个人选择自己认为合适的休息日。请编制一程序,打印轮休的所有可能方案。当然使每个人都满意,例如每人选择的休息日,每个人先选择自己的休息,然后经过分析和商量,列出有关的可能的方案。系统的创建与实施可以为生活区或者企业提供很方便的服务。便于保安
5、人员的工作服务。管理员可以修改值班的信息以及基本的信息。同时为了使每个人都满意,可以实施轮流的方案,这样每个人就处于平等的优势,当然保安人员可以请假或者经过他们自己的商量,暂时的替班。三 系统设计方案 3.1系统详细描述本保安值班安排系统主要有以下四个功能:1) 保安排班管理,管理员可以通过登录界面进入信息界面查看保安人员的值班信息;2) 管理员管理,管理员可以通过信息修改表修改保安人员的值班信息:3) 保安排班查询.,保安人员可以通过登陆界面查询值班情况:4) 程序管理权限的设置,即管理员和保安人员的登陆后进入的界面不同。本系统基本操作要求有以下几点:1) 该程序要求应该是能够输入每人选择的
6、休息日期,由于工作需要进行轮休制度,一星期中每人只能休息一天。2) 先让每一个人选择自己认为合适的休息日,判断是否符合条件3) 此程序可以打印轮休的所有可能方案。当然使每个人都满意。4) 每个人先给出自己的想休息的星期天,然后,经过商量,让主管人员给出可能的方案。3.2模块结构图系统模块设计的模块结构图如下:开始排班输入资料查询删除资料更改资料查询工龄查询休息时间输出资料修改密码退出图3.1主模块图注释:输入相应数字可进入相应菜单,删除和更改资料需要输入密码。四 系统实现与测试4.1 主菜单 4.1.1主菜单流程图开始输出可选择项判断是否退出结束 输入选择的项目 进行选择的操作图4.1主菜单流
7、程图4.1.2主菜单代码int main()int m;string p;int t=1;while(t!=0)system(cls);cout*欢迎进入排班系统*endl;cout# * #endl;cout# * #endl;cout# * #endl;cout# *快乐排班* #endl;cout# * #endl;cout# * #endl;cout# * #endl;cout*欢迎进入排班系统*endl;cout排班请输入1;输入资料请输入2;查询请输入3;删除资料endl请输入4;更改资料请输入5;查询工龄请输入6;查询休息endl时间请输入7;输出资料请输入8;修改密码请输入9;
8、退出endl请输入0m;if(m=1)case1();else if(m=2)if(case0()=0)case2();else if(m=3)case3();else if(m=4)if(case0()=0)case4();else if(m=5)if(case0()=0)case2();else if(m=6)case6();else if(m=7)case7();else if(m=8)case8();else if(m=9)case9();else if(m=0)t=0;elsecout无该选项请重新选择!endl;cout输入任意数值返回主菜单。p;return 0;4.1.3主菜单
9、测试运行本保安排班安排系统,进入主菜单界面(如图4.2):图4.2主菜单测试图开始输出主页面判断是否输入1输入选择输出可能方案If(保存)输入选择的方案保存结束4.2排班模块的实现4.2.1排班流程图输出输入选择择N输入0Y图4.3排班模块流程图4.2.2排班模块代码void case1(void)int m,i;string o;int z7;int j,k,h,n=0,flag=1;int a,b,c,d,e,f,g;int achoice,bchoice,cchoice,dchoice,echoice,fchoice,gchoice;int q77;int A7;cout*欢迎进入排班系
10、统*endl;cout# 特别注意! #endl;cout# 请各位工作人员输入自己想要轮休的日期 #endl;cout# 请先选择你要选择的次数 #endl;cout# 再选择你要轮休的日期 #endl;cout# #endl;cout# #endl;cout# #endl;cout*欢迎进入排班系统*endl;cout请赵输入你想选择的次数achoice;cout请赵输入轮休日期endl: ;for(j=0;jqj0;cout请钱输入你想选择的次数endl;scanf(%d,&bchoice);cout请钱输入轮休日期endl: ;for(j=0;jqj1;cout请孙输入你想选择的次数c
11、choice;cout请孙输入轮休日期endl: ;for(j=0;jqj2;cout请李输入你想选择的次数dchoice;cout请李输入轮休日期endl: ;for(j=0;jqj3;cout请周输入你想选择的次数echoice;cout请周输入轮休日期endl: ;for(j=0;jqj4;cout请吴输入你想选择的次数fchoice;cout请吴输入轮休日期endl: ;for(j=0;jqj5;cout请陈输入你想选择的次数gchoice;cout请陈输入轮休日期endl: ;for(j=0;jqj6;for(a=0;aachoice&qa0!=0;a+)for(b=0;bbchoi
12、ce&qb1!=0;b+)for(c=0;ccchoice&qc2!=0;c+)for(d=0;ddchoice&qd3!=0;d+)for(e=0;eechoice&qe4!=0;e+)for(f=0;ffchoice&qf5!=0;f+)for(g=0;ggchoice&qg6!=0;g+)A0=qa0; A1=qb1; A2=qc2; A3=qd3; A4=qe4; A5=qf5; A6=qg6;flag=1;for(k=0;k6;k+)for(h=k+1;h7;h+)if(Ak=Ah) flag=0;if(flag=1)cout得到以下组合:endl;cout赵: ; cout星期A0
13、endl;cout钱: ; cout星期A1endl;cout孙: ; cout星期A2endl;cout李: ; cout星期A3endl;cout周: ; cout星期A4endl;cout吴: ; cout星期A5endl;cout陈: ; cout星期A6endl;cout ;n+;if(n=0)cout对不起,你们的选择不能实现排班,请重新选择!endl;else cout保存请输入1;cout退出请输入0m;if(m=0)cout ;else if(m=1)cout请按次序和选择的方案输入休息日endl;for(i=0;izi; fstream outfile(f1.txt,ios
14、:out); if(!outfile) coutopen error!endl请退出程序并检查相应数据文件!endl;for(i=0;i=6;i+)outfilezi ;outfile.close();cout已保存!endl;cout请输入任意值返回主菜单。o;4.2.3排班模块测试输入1回车将分别请钱、赵、孙、李、周、吴、陈输入选择次数和轮休日期然后自动排班,输入2选择方案并保存数据。(如图4.4) 图4.4排班模块测试图1 图4.5排班模块测试图2 图4.6排班测试图3图4.7排班测试图4开始4.3输入资料模块判断是否输入2输入密码输入资料If(保存)保存输入0输出主页面4.3.1输入资
15、料模块流程图N结束YNY是否退出NYIf(正确) N Y输出请输入资料NY 图4.8输入资料模块流程图4.3.2输入资料模块代码void case2(void)int n,t;string i;struct baoanint num;string name;char sex;int age;string telephone;int day;int days;string addr;baoan8;fstream infile(f2.txt,ios:in);if(!infile)coutopen error!endl请退出程序并检查相应数据文件!endl;for(n=1;nbaoann.numba
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- c+ 课程设计 保安 排班 系统
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内