公司员工管理系统设计说明书.doc
《公司员工管理系统设计说明书.doc》由会员分享,可在线阅读,更多相关《公司员工管理系统设计说明书.doc(17页珍藏版)》请在咨信网上搜索。
个人收集整理 勿做商业用途 课程设计说明书 课 程 名 称: 面向对象程序设计 题 目: 公司员工管理系统 年级/专业/班: 学 生 姓 名: 学 号: 目 录 1 引 言 1。1 问题的提出 1.2任务与分析 2 程序的主要功能 2。1新增功能 2.2更改功能 2.3 删除信息 2.4查找功能 2。5显示功能 2.6全部删除功能 3 程序运行平台 4 总体设计 5 程序类的说明 6 模块分析 6.1 添加模块 6.2 显示模块 6。3 修改模块 6。4 查找模块 6。5 删除模块 6。6 清空模块 7 系统测试 引言 1.1 问题的提出 随着计算机的普及,网络进入大宗的家庭,不论在工作、学习还是生活中,人们越来越离不开它,社会上,计算机及使用计算机的人几乎是随处可见。人们用计算机,是因为它能反映现实世界,随着计算机越来越深入到人们的实际生活,如何把计算机科学更好的应用于实际,最大限度解决人们日常问题已经成为许多人热衷的研究方向。 1.2 任务与分析 1. 人数其中,人员编号在生成人员信息时同时生成,每输入一个人员信息编号顺序加1。 2. 升级程序对所有人员有提升级别的功能 3. 工资计算薪的计算方法是:经理拿固定月薪,兼职技术人员按工作小时数领取月薪,兼职推销员的报酬按该推销员当月销售额提成 ,销售经理既拿固定月薪也领取销售提成。 4. 修改能按姓名或者编号显示、查找、增加、删除和保存各类人员的信息 5. 在基本要求达到后,可设计出比较友好的界面(如下拉菜单),也可用VC++ ClassWizard 设计. 2. 程序的主要功能 1. 新增(添加新职员,计算工资) 2. 更改(更改职员信息) 3. 删除(删除职员信息) 4. 查找(显示所要寻找的职员信息) 5. 显示(显示所有职员的信息) 6. 全删(删除所有职员的信息) 3. 程序运行平台 WINDOWS XP/2000 VC++ 4. 总体设计 4.1 主要流程图 开始 选定相应操作序号 退出 增加 修改 删除 查询 显示 输 入 数 据 保 存 到 文 件 退 出 显示信息 图2-1 流程图 4.2 N-S图 开始 键盘输入操作序号 判断炒作序号 操作序号传入函数 按要求输入相关数据 数据保存到文件 退出 图2-2 N—S图 5. 程序类的说明 class Employee //职工类 { int tag;//删除标记 int no;//职工编号 char name[20]; char zw[20];//职工职位 int salary;//职工工资 public: Employee(){} char *getname() {return name;}//获取名字 int gettag() {return tag;}//获取标记 int getno() {return no;}//获取编号 int getsalary(){return salary;}//获取工资 void setzw(char q[])//设置职位 { strcpy(zw,q); } void setname(char na[])//设置名字 { strcpy(name,na); } void getsalary(int sa){salary=sa;} void delna(){tag=1;}//删除 void addemp(int n,int sa,char *na,char *q)//增加 { tag=0; no=n; salary=sa; strcpy(name,na); strcpy(zw,q); } void disp()//显示职工信息 { cout<〈"│"〈〈setw(10)<<no〈〈"│”〈<setw(10)<<name〈<”│”<<setw(10)<<salary<〈"│”<〈setw(10)〈〈zw〈<” │"〈<endl; cout〈〈”├——--—┼—————┼—————┼—-————-┤”<〈endl; } }; /////////////////////////////////// /////////////////////////////////// class Database//职工数据类 { int top; Employee read[Maxr]; public: Database()//将职工信息从employee。txt读取到read[]中 { Employee s; top=-1; fstream file("employee。txt",ios::in); while (1) { file.read((char *)&s,sizeof(s)); if (!file) break; top++; read[top]=s; } file。close(); } void clear()//删除所有 { top=-1; renshu=0; } ////////////////////////////////////////////////////////// int addemp (int n, int sa,char *na,char*q) //增加职工 { Employee *p=query(n); if (p==NULL) { top++; read[top].addemp(n,sa,na,q); return 1; } return 0; } ////////////////////////////////////////////////////// Employee *query(int empid) { for (int i=0;i<=top;i++) if (read[i]。getno()==empid && read[i]。gettag()==0) return &read[i]; return NULL; } ///////////////////////////////////////////////// Employee *query1(char empna[20]) { for (int i=0;i<=top;i++) if ((read[i]。getname()==empna) && read[i]。gettag()==0) return &read[i]; return NULL; } ///////////////////////////////////////////// void disp() //职工信息显示 { for (int i=0;i〈=top;i++) read[i].disp(); } ////////////////////////////////////////////////// void empdata(); ~Database() //将read[]中的信息读如到employee。txt中 { fstream file(”employee.txt”,ios::out); for (int i=0;i<=top;i++) if (read[i].gettag()==0) file。write((char *)&read[i],sizeof(read[i])); file。close(); } }; 6. 模块分析 6.1添加: void Database::empdata()//职工维护 { int choice=1; int m=1;int b=1; char rname[20]; int empid; int empsa;char q[20]; Employee *r; while (choice!=0) { cout<<”职工维护 1:新增 2:更改 3:删除 4:查找 5:显示 6:全删 0:退出=>”; cin>>choice; switch (choice) { case 1: cout〈〈setw(50)〈<” ┌—-—-—---———————┐\n”; cout<〈setw(50)〈<” │ 请选择您所需的操作 │\n”; cout<<setw(50)<〈" │ 经理: 1,并按回车键 │\n"; cout<<setw(50)〈<” │ 销售经理: 2,并按回车键 │\n"; cout<<setw(50)<〈” │ 兼职推销员: 3,并按回车键 │\n"; cout<<setw(50)<<” │ 兼职技术人员 4,并按回车键 │\n”; cout〈<setw(50)<〈" └———-—-—————-———┘\n”; cout〈<setw(50)〈<” 公司总人数:"<〈renshu<<endl; cin>〉m; while(m!=0) { switch(m) { case 1: cout〈〈"输入经理编号:”; cin>>empid; cout<〈"输入经理姓名:"; cin〉>rname; addemp(empid,8000,rname,"经理"); renshu++; break; case 2: cout〈<”输入销售经理编号:”; cin>>empid; cout〈<”输入月提成: "; cin>〉empsa; cout〈〈"输入销售经理姓名:"; cin〉>rname; addemp(empid,4000+empsa,rname,”销售经理"); renshu++; break; case 3: cout〈<"输入兼职推销员编号:”; cin〉〉empid; cout〈〈”输入销售额提成: "; cin>>empsa; cout<〈"输入兼职推销员姓名:”; cin>>rname; addemp(empid,empsa,rname,"兼职推销员”); renshu++; break; case 4: cout〈〈"输入兼职技术人员编号:”; cin〉〉empid; cout〈〈"输入工作小时: ”; cin〉>empsa; cout〈<”输入兼职技术人员姓名:"; cin〉>rname; addemp(empid,20*empsa,rname,"兼职技术人员"); renshu++; break; } break; } break; 6。2更改: case 2: cout<〈"输入职工编号:”; cin〉>empid; r=query(empid); if (r==NULL) { cout<〈"该职工不存在”<〈endl; break; } cout〈<”输入新的工资:”〈<endl; cin>>empsa; r-〉getsalary(empsa); cout〈<"请输入新的及级别"〈<endl; cin>>q; r—>setzw(q); addemp(empid,empsa,rname,q); break; 6。3删除: case 3: cout〈〈”输入职工编号:”; cin〉〉empid; r=query(empid); if (r==NULL) { cout〈<"该读者不存在”<〈endl; break; } r->delna(); break; 6.4查找: case 4: cout<<setw(50)〈〈” ┌—-——————-————┐\n"; cout〈<setw(50)〈<" │ 请选择您所需的操作 │\n"; cout〈<setw(50)<〈" │ 按编号查找1,并按回车键 │\n"; cout〈<setw(50)<〈" │ 返回 2,并按回车键 │\n”; cout〈〈setw(50)<〈" └—————-——--———┘\n"; cin〉〉b; while(b!=0) { switch(b) { case 1: cout<〈"输入职工编号:”; cin>〉empid; r=query(empid); if (r==NULL) { cout<<”该职工不存在"〈〈endl; break; } cout〈<”├—————┼—————┼—-———┼————-—-┤"〈〈endl; cout<<"│"<<setw(10)〈〈”编号”〈〈"│"〈〈setw(10)〈<"姓名"<<"│"<<setw(10)〈<"工资”〈<”│”<<setw(10)〈<"级别”<〈” │”<<endl; cout<〈”├——-——┼———-—┼——-—-┼—-—————┤"<<endl; r—〉disp(); break; case 2: break; } break; } break; 6.5显示: case 5: cout〈〈"├—-———┼—-——-┼—-—--┼———-—-—┤"<〈endl; cout<<"│”〈<setw(10)<<”编号”〈〈"│"〈〈setw(10)<〈"姓名”<〈”│”<<setw(10)〈<"工资"<<”│”<〈setw(10)〈<”级别"〈<” │"<〈endl; cout〈〈”├—--——┼——--—┼————-┼-————--┤”〈〈endl; disp(); 6.6全部删除: case 6: clear(); break; } } ///////////////////////////////////////////////////////////// void main() { int choice=1;Database EmpDB; while(choice!=0) { cout<<”********************************************************************************"〈<endl; cout<<endl; cout〈<endl; cout〈<setw(20)〈〈"******************************欢迎使用职工管理系统******************************"<〈endl; cout<〈endl; cout<<endl; cout〈〈setw(50)〈<” ┌—-—---———-——-——┐\n"; cout〈<setw(50)〈〈” │ 欢迎使用公司员工管理系统 │\n"; cout〈〈setw(50)〈〈” │ │\n”; cout〈<setw(50)〈〈” │ 请选择您所需的操作 │\n"; cout〈<setw(50)〈〈” │ │\n”; cout<<setw(50)<<" │ 操作 1,并按回车键 │\n"; cout〈〈setw(50)<<" │ │\n”; cout〈〈setw(50)<<” │ 返回 0,并按回车键 │\n”; cout〈<setw(50)〈〈” └———————--——————┘\n"; cin>〉choice; switch(choice) { case 1: while(1) { cout<<setw(20); EmpDB。empdata(); break; break; } } } } 7. 系统测试 开始 选择“1”,进行操作: ,出现职工维护: 选择任务1新增,并且添加一个经理职务: 我们先选择4查询任务,并按编号查询: 选择5显示任务: 选择3删除任务,并按编号删除:- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 公司员工 管理 系统 设计 说明书
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【w****g】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【w****g】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【w****g】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【w****g】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文