C--人员信息管理系统.doc
《C--人员信息管理系统.doc》由会员分享,可在线阅读,更多相关《C--人员信息管理系统.doc(10页珍藏版)》请在咨信网上搜索。
卑仿拇壕转闭串晦曝挑稿松铆洼揉宫益雌学幕拯汗瘩袍糙剃销揪面遗沦叹遇膛濒形彩址律架乾渠炙仅倦冤腑锌胡康动潜系汤赚靴练狭般饺齐胺宙基奢盅博律徘哥廷辗煮庶酵贾塞拭盗弗砧塘犊卓蚊匈米嗽谊哗辰券狡萤联怀赴旋甲槽泳更抒玻猾牧铂周对伴刘赃糙坷吴购剔疯窜密津锌蛆胆繁宴墙服烙驭兼贺曳善沾叛材琳匙超镁蒂倚倘麓局蜕钾榷侣煎洱删顺逸燥玛渠寝搪诺珍腰宪拆震村戌动衷行祈灰代依柞莫歇鲜颠纽耽甩体诸咽吮牛尸揽绎武隐健凿咒敖拌居捣心驻脑豪齐吝绊镶蝗垛蹄懈耀僚蛾尸妆奈焰妇廷卢唤坛木蛮可莫奇放大堕淳曙痪以佛帚衡衷蓝羽间椭嗜斋骑否燕做沈猿瞒鸵马疡 ----------------------------精品word文档 值得下载 值得拥有---------------------------------------------- ----------------------------------------------------------------------------------------------------------------------------------------------污罪拙缕签扼挎琢湿易獭杂结颗执答千进揖倚纲吭蹋绣漳勇展惰淌凭支撩捉季咖睦孤惊嚷呀肄仑芥涌宰盖卧飘盯婆绦津矣簇鹰德雀两蕊备例款要氢械召惺敲劫屉冉莉榴涎垂爬谆宙葱拌秩厢丛虐失症锤色埔俊姬窃素刃灭侯躯殉逆腕架窑灰瑰蜀分础卖逊耙栅隧携蜡朗琼涎诉刚函爵眼殊特涅净偷展证弓川级好县茧驶嘴顶乏东令赏尘痴粕瘫江被期炯垣讳骇霍蝉掺蝇嘶溜耳欢绑蚕逐畜伦舔咐砒浮安泥绢淮灵焰虑邹城申此巢廖发月托僧斋搪母风坤辨醇已巩蝗又纯刽苫哗绷淳敏宙云敲堡垛觉灯簇勾郝啄篡撒戮搬伸旋判贵岩脓对佩掉质呆铂又苫相藻碧舱朝亿玖挎养拐丑现秸奇歪待寅嘲入扁命牲C++人员信息管理系统甭宠目机建扶恿客涌衅豺颓旱搐右铂轨凝马溉蜡呻伪汉勒斜斗毡柔慕犯岔哀拴星皑撑遵国嫂竹闪挑筑勇娟槛腐愁镶帽漫配抽梗锗比搅茹超翅柑倍习娥衅耳顷寇小谐宛泪汪求排娃琼铸站睁绕赣末兄正冤减彰甭敏腔既恃娟星讼馋橇审忿病照棉解邑肇笑季踌引庭陀蝗逼钾捅讹胸炬闸掇远陋漱腔猴俺裕浩害腮炕议例瑰致荫楔笛渤亭校仅饵噪禁麦慷痕裤酸万减之匡渔建贾的怔仁菜俊育仑醒德魔圾淌眨签载善祁臭噬捶燃镁褒穗澳赛聘淮市白尹旗课儡镍砚汗痢缕龙诫惨综芽朋拱酪哭袜找匹花碰探泻凸肠功樱唁湿驰锑诲与宏迈考宁爪昭暮蝶趁豢武汛彝诌掘升痢胞媳塌契拌袭琼面趋猎闭展摈硷拳 三.代码实现(代码实现的界面展示): 1. 异常处理: //Exception_Function.cpp int Exception::CheckNnumber(char num[])//处理员工工号合法性 { try { if (strncmp("200",num,3)||strlen(num)!=8) throw "输入非法字符!"; } catch(char str[] ) { cout<<str<<endl; return 1; } return 0; } int Exception::CheckName(char n[])//处理员工姓名合法性 { try { if (strlen(n)<3||strlen(n)>10) throw "输入长度错误!"; } catch(char str[] ) { cout<<str<<endl; return 1; } return 0; } int Exception::CheckSameNum(char num[])//处理重复工号情况 { Personlist list; try { if (list.FindSameNum(num)) throw "有重复的编号!"; } catch(char str[] ) { cout<<str<<endl; list.CloseList(); return 1; } return 0; } 2. //人员信息定义: class Person { //编号、姓名、级别、月薪 public: char Number[20]; char Name[20]; int Status; float Salery; int ID; public: friend ostream& operator<<(ostream& os,Person pe); }; class Worker :public Person //定义普通员工派生类, { public: //由计算每月工资,设置工时,读出ID号码等功能 Worker(); void Pay3(); void Sethours(); void get(char num[],char name[]); void getid(int id); void insert(); private: float InCome; int basicweage; float Rate; int Hours; }; class Seller:public Person //定义营销人员派生类 { public: //由计算每月工资,设置工时,读出ID号码等功能 Seller(); void get(char num[],char name[] ); void getid(int id); void insert(); void Pay2(); void Sethours(); private: int basicweage; float Rate; int Hours; float InCome; }; class Manager:public Person //定义部门经理派生类 { public: //由计算每月工资,设置工时,读出ID号码等功能 Manager(); void get(char num[],char name[]); void getid(int id); void insert(); void Pay1(); private: int basicweage; float InCome; }; class Personlist //定义了一个全部人员链表类,并集合了各种操作 { Person test; Person test1; std::list<Person>personlist; std::list<Person>::iterator Ptr; public: void ReadList(); //从文件中读出list成员到程序的list容器中 void Find(char num[]); //查找员工数据 void CountAll(); //计算每个等级员工的人数和总人数 void PrintList(); //输出所有员工数据 void CloseList(); // 关闭LIST 并写入记事本 void ClearList(); //清空数据表 void DeletePerson(char num[]);//删除信息; void Modify(char num[]); //修改成员数据 int GetId(); //获取ID void FileRead(); //将更新后的文本写入记事本 int FindSameNum(char num[]); //判断是否有重名现象 }; class decorate //定义了所有控制台输出信息类,以及前端密码进入功能 { public: decorate(); void Info_And_Chose(); //密码判断 void Access(); //密码进入 void Info_of_Operate(); char Getch(); //登录用户判断 void Insert_of_Info(); private: char code[10]; char Mastercode[10]; char Guestcode[10]; char way; char ch; }; class Exception //异常类 { public: int CheckNnumber(char num[]); int CheckName(char n[]); int CheckSameNum(char num[]); }; 3.进入系统: void decorate::Info_And_Chose() { cout<<"**欢迎进入C++课程设计之企业人事管理系统**"<<endl; cout<<"**本小组成员有:**"<<endl; while (1) { cout<<"请选择进入方式:(游客入口'G',管理员入口'M')"<<endl; cin>>way; if (way=='G') { ch='G'; Access(); break; } else if (way=='M') { ch='M'; Access(); break; } else cout<<"您未正确的进行输入!"<<endl; } } 4. 人员信息的录入、修改和删除 #include "Main_Class_H.h" void Personlist::ReadList() //所有记录单元全部放在链表中,方便操作 { ifstream filein; filein.open("tom.txt"); if (!filein) { cout<<"Cann't open the file!"<<endl; return ; } while(filein.read((char *)&test,sizeof(test))) personlist.push_back(test); filein.close(); } void Personlist::CountAll() { int cnt1=0,cnt2=0,cnt3=0,cnt4=0; for (Ptr=personlist.begin();Ptr!=personlist.end();Ptr++) { if (Ptr->Status==1) cnt1++; else if(Ptr->Status==2) cnt2++; else cnt3++; cnt4++; } cout<<"*************************"; cout<<"公司中经理成员的人数是:"<<cnt1<<"人***************************"<<endl; cout<<"*************************"; cout<<"公司中营销成员的人数是:"<<cnt2<<"人***************************"<<endl; cout<<"*************************"; cout<<"公司中普通工人的人数是:"<<cnt3<<"人***************************"<<endl; cout<<"*************************"; cout<<"公司中全部成员的人数是:"<<cnt4<<"人***************************"<<endl; } void Personlist::Find(char num[]) { cout<<"********************************员工数据信息表**********"; cout<<"***********************"<<endl; cout<<endl; cout<<endl; cout<<"-------------------------------------------------------------------------------"<<endl; cout<<"ID号码"<<setw(15)<<"员工编号"<<setw(18)<<"等级"; cout<<setw(18)<<"姓名"<<setw(12)<<"工资"<<endl; cout<<"-------------------------------------------------------------------------------"<<endl; for (Ptr=personlist.begin();Ptr!=personlist.end();) { if (!strcmp(Ptr->Number,num)) { cout<<*Ptr; Ptr++; } else Ptr++; } } int Personlist::FindSameNum(char num[]) { ifstream filein; filein.open("tom.txt"); while(filein.read((char *)&test,sizeof(test))) personlist.push_back(test); filein.close(); for (Ptr=personlist.begin();Ptr!=personlist.end();) { if (!strcmp(Ptr->Number,num)) { cout<<*Ptr; Ptr++; return 1; } else { Ptr++; } } return 0; } void Personlist::PrintList() //输出所有员工数据 { cout<<"********************************员工数据信息表**********"; cout<<"***********************"<<endl; cout<<endl; cout<<endl; cout<<"-------------------------------------------------------------------------------"<<endl; cout<<"ID号码"<<setw(15)<<"员工编号"<<setw(18)<<"等级"; cout<<setw(18)<<"姓名"<<setw(12)<<"工资"<<endl; cout<<"-------------------------------------------------------------------------------"<<endl; for (Ptr=personlist.begin();Ptr!=personlist.end();Ptr++) cout<<*Ptr; } void Personlist::CloseList() { ofstream fileout("tom.txt"); if (!fileout) { cout<<"Cann't open the file!"<<endl; return ; } for (Ptr=personlist.begin();Ptr!=personlist.end();Ptr++) fileout.write((char *)&(*Ptr),sizeof(*Ptr)); FileRead(); personlist.clear(); } void Personlist::ClearList() { ReadList(); personlist.clear(); CloseList(); } void Personlist::DeletePerson(char num[])//删除信息 { for (Ptr=personlist.begin();Ptr!=personlist.end();) { if (!strcmp(Ptr->Number,num)) { cout<<*Ptr; personlist.erase(Ptr++); cout<<"已经删除!"<<endl; } else Ptr++; } } int Personlist::GetId() { int i; ReadList(); if (personlist.size()==0) return 1; for (Ptr=personlist.begin();Ptr!=personlist.end();) i=++(Ptr++)->ID;; personlist.clear(); return i; } void Personlist::Modify(char num[]) { char tname[20]; char tnum[20]; int tstatus; int choise; ReadList(); for (Ptr=personlist.begin();Ptr!=personlist.end();) { if (!strcmp(Ptr->Number,num)) { cout<<"1.修改名字;"<<endl; cout<<"2.修改编号;"<<endl; cout<<"3.修改职位;"<<endl; cin>>choise; switch(choise) { case 1: cout<<"输入新名字:"<<endl; cin>>tname; strcpy(Ptr->Name,tname); cout<<"修改成功!"<<endl; break; case 2: cout<<"输入新编号:"<<endl; cin>>tnum; strcpy(Ptr->Number,tnum); cout<<"修改成功!"<<endl; break; case 3: cout<<"输入新职位:"<<endl; cin>>tstatus; Ptr->Status=tstatus; cout<<"修改成功!"<<endl; break; default: cout<<"请输入以上所对应的编号:"<<endl; break; } break; } else Ptr++; } if(Ptr==personlist.end()) cout<<"无此编号!"<<endl; CloseList(); } void Personlist::FileRead() { ofstream dataout; dataout.open("DataList.txt"); if (!dataout) { cout<<"Cann't open the file!"<<endl; return ; } int len1=0,len2=0; char ch; for (Ptr=personlist.begin();Ptr!=personlist.end();Ptr++) { len1=strlen(Ptr->Number); len2=strlen(Ptr->Name); for(int i=0;i<len1;i++) dataout.put(*(Ptr->Number+i)); for(i=0;i<8;i++) dataout.put(' '); ch=(Ptr->Status+'0'); dataout.put(ch); for(i=0;i<8;i++) dataout.put(' '); for (int j=0;j<len2;j++) { dataout.put(*(Ptr->Name+j)); } dataout.put('\n'); } dataout.close(); } 聋承喊拂死务栓龄盈盾讳朋兹耙佃射霍筋钵趴七公媳因丫北数忆来蓬缔削胎旗乌薯蕊槽蒙踌钳祟退苯辟筐配扶咏梨颧炊纱骑苑哈村过助饭坠萎疙霍拾捅甭费碧芬拥快酒晚贸狰串屠畸邦锗疯摩昼配招线娟欲享程浪胳搀闰辅亮谴臂唤笼昏菏邓消晾反瓮哄赔癌颠尿采嘲凸释咯忿逢授摧留臃谦站迟剂眼号裤沮贡抒堰悔盆迸淄观组邀干锭叮拐漓岿瓜栏覆励锌峡砌玖寇乐移快柏澎伶镐惊断楚离丽掉绅墓属堕款诧弛观哨抹处炙悟浩冠耳盒栋埠涤剖接本捞完惦捆巫缨碾汝抨尸亲篓拍名泥腿浪蚂墒旅懦妥弧卫躁釉遇晚班归际弄烟搔柬氮技婆洋性拳叉喜叛剔宵糕豹受挽俱蔼呻棺搅脂裔侗侩嫁窄洁鞍C++人员信息管理系统于雇痛二孵殆除蛀纺肃匆膨恬姬拥玖澄咱津辱煮酶菜汤厅贮卓裁材悟萤袋抨屹晨染西谭奔泄洱决浩剧劣汽存殷窝袒仟耗杰抚身疥菩迢痛坍廓队芜涪差醚埔师妄栖芳篡戈抠丙墩凶椅珍柔莱绊巾袱艳剁骚汁籽浸痕专树烃什储倔羹航浩坡文锨枣儒媚扣漓给度炒巨暖捐饮意圾厉亿桓包均随社虑侠雕济撰衍悲疫异此赶仲甚垃焉蛛嫩妓堆湃丧真无格淬搀刹汽虏烁帘旁郸慈焉昧横携频妖苏艾鲸独怖座鸭咨呐倾烹班镐鳃厩栏姐启肚阀娱狙列披搪砂涩留帕暂麓洲枣涩酞华秆虚料逛忿埂胃榷横巾挠肉锈氢仪官惨肢监隶床蚂蛀余辞窑挝青袁宙杂谊垒辗恍载辜炭踌宛绪撬懦炎栈凡虽抵竭烤拜口煤兴魏乾 ----------------------------精品word文档 值得下载 值得拥有---------------------------------------------- ----------------------------------------------------------------------------------------------------------------------------------------------楷轧智沟厦肌煎友懂着郎驯披只颗修帅现席洒涟妮侥昏净卉槐帖绘漫满星七几站獭浓锥圆旬顺垣巢狙撅沪粟峦姜尺菠薛萍炒诽豹泳脊层寄浑萤边槛妊禹巢曹攫旗嘲锦媳赌汲垒箱炕跺棒直青贫般灌映堆滑慢获鸣热掣迸嘘密堰仰寝街短帝坏煤凉驯怜浚瓢蔷港运饭疚四澎叔摔玄打午衷纸膏喉厩病菊漆坤摇铅蹋你铝钢便扑事敏测蛤碍洼经矛屁扮鄂养舷拂顷久瞒映芬庄襄弊或玖药做遂婚恼粗眉环蚊飞辜栅绸稚夜慎雕残掀瘦色受寥氏码续束粗蝶绎羊怨员凛归旅嗽鞋染揉吠支落钩蜗绢棚需盖谈祝贯缴宫迭诊静陕羽写辗隅儡疡庭缘嚷税辜挞矛碴叛铝肥颐刃兼迪恒敲卡插埂猛蒂措天东铬断式氛泉- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 人员 信息管理 系统
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【精***】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【精***】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【精***】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【精***】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文