C大工作工作作业-职员信息管理系统_第1页
C大工作工作作业-职员信息管理系统_第2页
C大工作工作作业-职员信息管理系统_第3页
C大工作工作作业-职员信息管理系统_第4页
C大工作工作作业-职员信息管理系统_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、(C+项目报告文档)C+程序设计职员信息管理系统 Version C+ 生命科学与技术学院生物医学工程专业1004班指导教师:彭娅婷日期:2011年07月03日开发团队人员姓名学号 任务成绩刘奔U5浏览信息模块Word文档3,4部分张博U6 信息录入模块,添加信息模块李扬U7信息排序Word文档2(2,3,4,5)张亚伦U8修改信息模块,显示所有信息模块 杨龙U9删除信息模块Word文档5,6部分齐中阳U0查询信息模块main函数的完成胡宇U1保存文档模块Word文档1,2(1)部分目 录1 项目(职员信息管理系统)需求分析)(1)项目目标(2)系统主要功能概述(3)可行性分析(4)项目运行环

2、境2 项目(职员信息管理系统)设计2)(1)概要设计(2)详细设计 1) UML图(类的结构和层次)2)字段说明(3)项目命名约定(4)项目分工表(5)项目进度表3 项目(职员信息管理系统)功能介绍4)4 项目(职员信息管理系统)功能测试5)5 项目使用说明6)6 项目(系统)总结6)附录1 程序源代码7)1 项目(职员信息管理系统)需求分析 项目目标开发一职员信息管理系统,实现职员信息的录入,修改,查询,删除,保存等功能。 系统主要功能概述1.添加信息模块:初始化成员信息,包括职工号,姓名,性别,年龄,学历,工资,住址,电话,给成员排序;2.删除信息模块:删除某位员工信息数据;3修改信息模块

3、:依据职工的序号修改某位员工的信息;4.信息查询模块:依据职员的序号查询某位职员的信息;5.信息浏览模块:浏览当前所有职员信息;6:信息排序模块:依据职工号,姓名,薪酬为职工排序;7:保存信息模块:将所录信息存入文档。可行性分析1.系统可行性:1:硬件支持:电脑(笔记本电脑,台式电脑)可以运行程序;2:软件支持:Windows,VC+作为程序运行平台2.技术可行性:依据本学期学习C+知识,运用面向对象设计,团队成员协作完成。3.使用可行性采用简单的GUI界面,用户经过短期培训即可方便使用系统。 项目运行环境CPU奔腾 或以上内存512M或以上硬盘80GB或以上服务器端OSWindows 200

4、0/NT/Server客户端OSWindows 2000/XP网络配置局域网2 项目(职员信息管理系统)设计 概要设计: 建立Employee类,List类,依据要求设计一个主函数,构造函数,析构函数,以及10个功能函数,分别为:(1)InfoInput; ListList私有成员变量num;employee *phead;List公有成员函数List()phead=new employee;num=0;void InfoInput(char*n,char*name,char*sex,int age,char*edu,float sal,char*addres,char*tele ); 加信息

5、模块:初始化成员信息,包括职工号,姓名,性别,年龄,学历,工资,住址,电话,给成员排序;2.删除信息模块:删除某位员工信息数据;3修改信息模块:依据职工的序号修改某位员工的信息;4.信息查询模块:依据职员的序号查询某位职员的信息;5.信息浏览模块:浏览当前所有职员信息;6:信息排序模块:依据职工号,姓名,薪酬为职工排序;7:保存信息模块:将所录信息存入文档。4 项目(职员信息管理系统)功能测试测试内容预计实际改善情况当前信息浏览测试会出现所有职员信息如预计信息录入测试依照提示录入职员信息如预计查询测试按职工号查询按编号查询按编号查询,无改动排序测试按编号排序如预计删除测试删除职员信息如预计修改

6、测试改动后信息可存档如预计新添成员测试增添新成员如预计保存文件测试文件可正常保存如预计退出测试正常退出程序如预计5 项目使用说明将程序正常编译后,按操作提示正常执行;如:当前信息浏览输入2,按回车键即可;操作简单,容易掌握,注意:修改信息后,执行操作8,将修改后信息存档。6 项目(系统)总结(写出项目实施过程中碰到的问题,如何解决的问题,有何收获等)本次C+实验操作难度大,小组成员分配任务后花费很长时间,看课本,上网查询资料后,才能正常完成自己所负责模块操作,且程序编写“巡查模块”未如预期,后期改动较大;通过本次试验,团队成员意识到互相团结协作,交流信息的重要性,且认识到自身存在的不足,以后还

7、需多加努力附录1 程序源代码#include#include#include#include#include/*employee职工类*/class employee public:char*num;char*name;char*sex;int age;char*edu;float salary;char*addres;char*tele;int ordernum;employee *next;public:employee()name=NULL;num=NULL;sex=NULL;edu=NULL;salary=;addres=NULL;tele=NULL;ordernum=0;next=N

8、ULL;void show()coutnum name sex age edu salary addres tele endl;void show1()cout序号:ordernum 职工号:num 姓名:name 性别:sex 年龄:age 学历:edu 工资:salary 住址:addres 电话:teleendl;/*List职工列表类*/class List private:int num;employee *phead;public:List()phead=new employee;num=0;void InfoInput(char*n,char*name,char*sex,int

9、age,char*edu,float sal,char*addres,char*tele ); 职工号升序排列 *|endl;cout|* 2.按姓名升序排列 *|endl;cout|* 3.按职工薪酬升序排列 *|endl;cout-sortway;switch(sortway)case 1: for(int i=0;inext,q=p-next;q;q=q-next,p=p-next)if(strlen(p-num)strlen(q-num)InfoSwap(p,q);coutendl排序后endl;showall();break;case 2: for(int i=0;inext,q=p

10、-next;q;q=q-next,p=p-next)if(strcmp(p-name,q-name)0) InfoSwap(p,q);coutendl排序后endl;showall();break;case 3: for(int i=0;inext,q=p-next;q;q=q-next,p=p-next)if(p-salaryq-salary)InfoSwap(p,q);coutendl排序后next;employee*q=phead;coutordernum;if(ordernumnum|ordernum=0)cout输入有误!请重新输入1-numnum|ordernumordernum!

11、=ordernum)p=p-next;q=q-next;coutendl要删除 name 吗(y/n)sure;if(sure=y)q-next=p-next;delete p-name;delete p-num;delete p-sex;delete p-edu;delete p-addres; delete p-tele;delete p;p=NULL;num-;employee *f=phead-next;for(int i=0;iordernum=i+1;f=f-next;coutendl删除后:endl;showall();else if(sure=n)coutendl已取消删除ne

12、xt;coutordernum; if(ordernumnum)cout输入有误,请在1-num范围内选择!num);for(;p-ordernum!=ordernum;p=p-next);cout-要修改的项目:-endl;cout|* 1.职工号 *|endl;cout|* 2.姓名 *|endl;cout|* 3.年龄 *|endl;cout|* 4.学历 *|endl;cout|* 5.工资 *|endl;cout|* 6.住址 *|endl;cout|* 7.电话 *|endl;cout-endl;int item;coutitem;if(item7)cout7);switch(it

13、em)case 1:char newnum20;coutnewnum;employee*q;int flag;while(1)flag=0;for(q=phead-next;q;q=q-next)if(strcmp(newnum,q-num)=0)flag=1;break;if(flag=1)coutnewnum;else break;p-num=new charstrlen(newnum)+1;strcpy(p-num,newnum);break;case 2:char newname10;coutnewname;p-name=new charstrlen(newname)+1;strcpy

14、(p-name,newname);break;case 3:int age;coutage;if(age130)cout年龄输入有误,重新输入:;while(age130);p-age=age;break;case 4:char edu40;coutedu;p-edu=new charstrlen(edu)+1;strcpy(p-edu,edu);break;case 5:float salary;coutsalary;p-salary=salary;break;case 6:char addres30;coutaddres;p-addres=new charstrlen(addres)+1;

15、strcpy(p-addres,addres);break;case 7:char tele20;couttele;p-tele=new charstrlen(tele)+1;strcpy(p-tele,tele);break;coutendl修改后:show1();/*showall显示所有信息*/void List:showall()employee *p=phead-next;coutendl-endl;cout当前所有职工:endlendl;cout序号 职工号 姓名 性别 年龄 学历 工资 住址 电话endl;cout-next)coutordernumshow();coutendl

16、-endl;/*InfoAdd添加信息*/void List:InfoAdd()employee*p;char num20;char name10;float sal;char sex4; int sexnum;int age;char edu10;char addres50;char tele20;cout请输入新添加人员的职工号,姓名,性别,年龄,学历,工资,住址,电话:endl;coutnum;int flag;while(1)flag=0;for(p=phead-next;p;p=p-next)if(strcmp(num,p-num)=0)flag=1;break;if(flag=1)

17、coutnum;else break;coutname;coutsexnum;if(sexnum=1)strcpy(sex,男);else if(sexnum=2)strcpy(sex,女);else coutn输入有误,重新输入:;while(sexnum!=1&sexnum!=2);coutage;coutedu;coutsal;coutaddres;couttele;InfoInput(num,name,sex,age,edu,sal,addres,tele);cout添加后:next;ofstream save_diskfile;(,ios:out|ios:trunc);if(!sav

18、e_diskfile)cout打开文件失败;return;for(int i=0;inum;i+)save_diskfilenum name sex age edu salary addres telenext;();/*List析构函数*/ List:List() employee *p=phead-next;while(p) phead-next=p-next;delete p-name;delete p-num;delete p-sex;delete p-edu;delete p-addres;delete p-tele;delete p;p=phead-next;delete phea

19、d-name;delete phead-num;delete phead-sex;delete phead-edu;delete phead-addres;delete phead-tele;delete phead;phead=NULL; /*Prompt弹出菜单函数*/void Prompt() coutendl-请选择菜单:-endl; cout|* 1.信息录入 *| endl; cout|* 2.当前信息浏览 *| endl; cout|* 3.查询 *| endl; cout|* 4.排序 *| endl; cout|* 5.删除 *| endl; cout|* 6.修改 *| e

20、ndl; cout|* 7.新添人员 *| endl; cout|* 8.保存文件 *| endl; cout|* 0.退出 *| endl; cout-endl;/*ReadFile读取文件信息函数*/void ReadFile(List &emp)char line150; break; if(*q= ) for(;pq;p+)sal=sal*10+*p-0; else float little=0; float t=; for(;pq;p+) sal=sal*10+*p-0; p+; for(;*q!= ;q+); for(;pq;p+) little=little+(*p-0)*t; t*=; sal+=little; /读取地址 for(;*q= ;q+); for(;pq;p+); for(;*q!= ;q+); *q=0; strcpy(addres,p); q+; /读

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论