c++课程设计保安排班系统.docx
- 文档编号:8416226
- 上传时间:2023-01-31
- 格式:DOCX
- 页数:50
- 大小:652.94KB
c++课程设计保安排班系统.docx
《c++课程设计保安排班系统.docx》由会员分享,可在线阅读,更多相关《c++课程设计保安排班系统.docx(50页珍藏版)》请在冰豆网上搜索。
c++课程设计保安排班系统
一、课程设计的目的
1)学习综合运用C高级语言课程和其他先修课程的知识,提高分析和解决实际问题的的能力,进一步巩固、加深和拓宽所学的知识;进一步加强结构化程序设计的思想,加深对高级语言基本语言要素和控制结构的理解。
2)全面系统的学习面向对象程序设计的基本概念、基本语法和编程方法;独立完成有一定工作量的程序设计任务,同时强调好的程序设计风格。
3)掌握程序设计中的常用算法和C语言的编程技巧和上机调试程序的方法。
4)在参与一系列子项目的实践过程中,提高如何综合运用所学知识解决实际问题的能力,以及获得相关项目管理和团队合作等众多方面的具体经验。
二、课程设计的任务
学校有7名保安人员:
赵、钱、孙、李、周、吴、陈。
由于工作需要进行轮休制度,一星期中每人休息一天。
预先让每一个人选择自己认为合适的休息日。
请编制一程序,打印轮休的所有可能方案。
当然使每个人都满意,例如每人选择的休息日,每个人先选择自己的休息,然后经过分析和商量,列出有关的可能的方案。
系统的创建与实施可以为生活区或者企业提供很方便的服务。
便于保安人员的工作服务。
管理员可以修改值班的信息以及基本的信息。
同时为了使每个人都满意,可以实施轮流的方案,这样每个人就处于平等的优势,当然保安人员可以请假或者经过他们自己的商量,暂时的替班。
三系统设计方案
3.1系统详细描述
本保安值班安排系统主要有以下四个功能:
1)保安排班管理,管理员可以通过登录界面进入信息界面查看保安人员的值班信息;
2)管理员管理,管理员可以通过信息修改表修改保安人员的值班信息:
3)保安排班查询.,保安人员可以通过登陆界面查询值班情况:
4)程序管理权限的设置,即管理员和保安人员的登陆后进入的界面不同。
本系统基本操作要求有以下几点:
1)该程序要求应该是能够输入每人选择的休息日期,由于工作需要进行轮休制度,一星期中每人只能休息一天。
2)先让每一个人选择自己认为合适的休息日,判断是否符合条件
3)此程序可以打印轮休的所有可能方案。
当然使每个人都满意。
4)每个人先给出自己的想休息的星期天,然后,经过商量,让主管人员给出可能的方案。
3.2模块结构图
系统模块设计的模块结构图如下:
开始
排
班
输入资料
查
询
删除资料
更改资料
查询工龄
查询休息时间
输出资料
修改密码
退
出
图3.1主模块图
注释:
输入相应数字可进入相应菜单,删除和更改资料需要输入密码。
四系统实现与测试
4.1主菜单
4.1.1主菜单流程图
图4.1主菜单流程图
4.1.2主菜单代码
intmain()
{
intm;
stringp;
intt=1;
while(t!
=0)
{
system("cls");
cout<<"****************欢迎进入排班系统*****************"< cout<<"#*#"< cout<<"#***#"< cout<<"#*********#"< cout<<"#***快乐排班***#"< cout<<"#*********#"< cout<<"#***#"< cout<<"#*#"< cout<<"****************欢迎进入排班系统*****************"< cout<<"排班请输入1;输入资料请输入2;查询请输入3;删除资料"< cin>>m; if(m==1)case1(); elseif(m==2) { if(case0()==0)case2(); } elseif(m==3)case3(); elseif(m==4) { if(case0()==0)case4(); } elseif(m==5) { if(case0()==0)case2(); } elseif(m==6)case6(); elseif(m==7)case7(); elseif(m==8)case8(); elseif(m==9)case9(); elseif(m==0)t=0; else { cout<<"无该选项请重新选择! "< cout<<"输入任意数值返回主菜单。 "< cin>>p; } } return0; } 4.1.3主菜单测试 运行本保安排班安排系统,进入主菜单界面(如图4.2): 图4.2主菜单测试图 4.2排班模块的实现 4.2.1排班流程图 图4.3排班模块流程图 4.2.2排班模块代码 voidcase1(void) { intm,i; stringo; intz[7]; intj,k,h,n=0,flag=1; inta,b,c,d,e,f,g; intachoice,bchoice,cchoice,dchoice,echoice,fchoice,gchoice; intq[7][7]; intA[7]; cout<<"****************欢迎进入排班系统*****************"< cout<<"#特别注意! #"< cout<<"#请各位工作人员输入自己想要轮休的日期#"< cout<<"#请先选择你要选择的次数#"< cout<<"#再选择你要轮休的日期#"< cout<<"##"< cout<<"##"< cout<<"##"< cout<<"****************欢迎进入排班系统*****************"< cout<<"请赵输入你想选择的次数"< cin>>achoice; cout<<"请赵输入轮休日期"< "; for(j=0;j { cin>>q[j][0]; } cout<<"请钱输入你想选择的次数"< scanf("%d",&bchoice); cout<<"请钱输入轮休日期"< "; for(j=0;j { cin>>q[j][1]; } cout<<"请孙输入你想选择的次数"< cin>>cchoice; cout<<"请孙输入轮休日期"< "; for(j=0;j { cin>>q[j][2]; } cout<<"请李输入你想选择的次数"< cin>>dchoice; cout<<"请李输入轮休日期"< "; for(j=0;j { cin>>q[j][3]; } cout<<"请周输入你想选择的次数"< cin>>echoice; cout<<"请周输入轮休日期"< "; for(j=0;j { cin>>q[j][4]; } cout<<"请吴输入你想选择的次数"< cin>>fchoice; cout<<"请吴输入轮休日期"< "; for(j=0;j { cin>>q[j][5]; } cout<<"请陈输入你想选择的次数"< cin>>gchoice; cout<<"请陈输入轮休日期"< "; for(j=0;j { cin>>q[j][6]; } for(a=0;a =0;a++) { for(b=0;b =0;b++) { for(c=0;c =0;c++) { for(d=0;d =0;d++) { for(e=0;e =0;e++) { for(f=0;f =0;f++) { for(g=0;g =0;g++) { A[0]=q[a][0]; A[1]=q[b][1]; A[2]=q[c][2]; A[3]=q[d][3]; A[4]=q[e][4]; A[5]=q[f][5]; A[6]=q[g][6]; flag=1; for(k=0;k<6;k++) { for(h=k+1;h<7;h++) { if(A[k]==A[h])flag=0; } } if(flag==1) { cout<<"得到以下组合: "< cout<<"赵: ";cout<<"星期"< cout<<"钱: ";cout<<"星期"< cout<<"孙: ";cout<<"星期"< cout<<"李: ";cout<<"星期"< cout<<"周:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- c+ 课程设计 保安 排班 系统