您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > 面向对象程序设计课程设计报告-正文参考模
目录1前言...............................................................................................................12需求分析.......................................................................................................12.1任务和要求.........................................................................................12.2运行环境.............................................................................................12.3开发工具.............................................................................................13分析和设计...................................................................................................13.1系统分析及设计思路.........................................................................13.2主要类图.............................................................................................23.3函数流程图.........................................................................................34具体代码实现...............................................................................................45课程设计总结.............................................................................................155.1程序运行结果或预期运行结果.......................................................155.2设计结论...........................................................................................16参考文献.........................................................................................................16致谢.............................................................................................................1611前言在日益发展的现代社会,一个高效实用的职工信息管理系统已经是企业必不可少的一个管理工具,它可以使企业在管理方面减少很多时间,本课程设计针对现代社会企业对员工信息的管理而设计,使员工的管理更加的简捷,更加的方便,界面友好,易于操作。为了设计一个功能强大的职工信息管理系统,我们建立了职工类,用于对职工进行各种操作,将职工的相关数据保存在文本文件中。2需求分析2.1任务和要求设计一个职工信息馆管理系统,完成职工信息管理等功能,要求完成以下功能:1.能够实现职工信息录入功能;2.实现删除职工信息的功能;3.实现修改职工信息的功能;4.实现用文本文件保存职工的信息;5.按照职工编号或工资对职工信息排序;6.按照编号查找职工;程序中所涉及C++语言内容包括:C++语言编译预处理过程、函数、数组、类、继承、封装、多态,重载,面向对象程序设计等相关内容。2.2运行环境(1)WINDOWS2000/XP系统(2)VisualC++6.0编译环境或DEVC++5.0编译环境2.3开发工具C++语言3分析和设计3.1系统分析及设计思路本系统采用C++编写Win32ConsoleApplication。使用文本文件保存数据。运行2程序即可进入欢迎界面,选择操作序号即可进入相应的操作界面,并执行相应的操作。其设计思路步骤可分为:(1)添加职工信息添加员工信息,提供员工信息的添加,在该模块中设计了安全检查机制,即确认是否添加员工的信息,若对员工信息的添加不满意,则可以选择重新输入。还设置有返回主菜单的选项以方便用户。(2)删除职工信息删除员工信息中设计了对员工人数的检查,如果员工人数NUM的值为0,则返回到主菜单。如果员工人数NUM不为0,则进入删除员工信息的界面。界面包括员工信息列表,和删除选项,方便用户的操作。(3)修改职工信息根据编号来修改职工的信息,若编号不存在则直接返回界面。(4)保存职工信息保存员工的信息,即为将当前所有的员工的信息存入到worker.txt中。这里我们采用的是C++的ofstream的写入文件的对象进行控制。(5)显示职工的信息按照职工编号从小到大排序或工资由高到低来排序职工信息。(6)查找职工信息根据编号来查找职工的信息,若编号不存在则直接返回界面。3.2主要类图Person+Person()+setPerson(num1:char*,name1:char*,sex1:char*,birth1:char*,tel1:char*,salary1:char*):void-num[]:char-name[]:char-sex[]:char-birth[]:char-tel[]:char-salary[]:char图3.1职工类图33.3函数流程图图3.2职工流程图while主菜单读取数据Main()Switch()()添加员工信息息修改员工信息删除员工信息员工信息排序查询员工信息保存员工信息退出44具体代码实现#includeiostream#includefstream#includestring#includestdlib.h//字符转浮点atof()#includewindows.husingnamespacestd;FILE*fp;//文件指针,指向worker.txtintNUM=0;//计数员工的个数intsaveCtrl=1;//该变量用于检测数据的修改后是否保存的情况classPerson{public:Person(){}//构造函数voidsetPerson(char*num1,char*name1,char*sex1,char*birth1,char*tel1,char*salary1);//成员数据的修改函数;friendvoidadd();//声明为Person的友元,函数功能为:1.员工信息输入friendvoidmodify();//声明为Person的友元,函数功能为:2.员工信息修改friendvoiddele();//声明为Person的友元,函数功能为:3.员工信息删除friendvoidindex();//声明为Person的友元,函数功能为:4.员工信息排序friendvoidfind();//声明为Person的友元,函数功能为:5.员工信息查找friendvoidsave();//声明为Person的友元,函数功能为:6.员工信息保存friendvoidread();private://声明编号、姓名、出生年月、性别、联系电话、基本工资等成员变量charnum[15];charname[15];charsex[5];charbirth[15];chartel[15];charsalary[15];};PersonPer[100];//声明全局Person对象数组voidPerson::setPerson(char*num1,char*name1,char*sex1,char*birth1,char*tel1,char*salary1){strcpy(num,num1);strcpy(name,name1);strcpy(sex,sex1);strcpy(birth,birth1);5strcpy(tel,tel1);strcpy(salary,salary1);}voidmenu()//主菜单{cout\n\nendl;cout\t\t*************************************************endl;cout\t\t*\t\t员工管理系统\t\t*endl;cout\t\t*------------------------------------------*endl;cout\t\t*\t\t1.员工信息输入\t\t*endl;cout\t\t*\t\t2.员工信息修改\t\t*endl;cout\t\t*\t\t3.员工信息删除\t\t*endl;cout\t\t*\t\t4.员工信息排序\t\t*endl;cout\t\t*\t\t5.员工信息查找\t\t*endl;cout\t\t*\t\t6.员工信息保存\t\t*endl;cout\t\t*\t\t0.退出\t\t\t*endl;cout\t\t*************************************************endl;cout\n\n\t请选择(0~6):;}voidadd()//1.员工信息输入{charnum[15];//暂时存放编号charname[15];//暂时存放姓名charsex[5];//暂时存放性别charbirth[15];//暂时存放生日chartel[15];//暂时存放电话charsalary[15];//暂时存放工资charp;//用于选择判断system(cls);//清屏while(1)//控制信息添加多次的循环{cout\n\n输入员工信息:endl;cout编号:;cinnum;coutendl;cout姓名:;cinname;coutendl;cout性别:;cinsex;cout生日:;cinbirth;coutendl;cout电话:;cintel;coutendl;6cout工资:;cinsalary;coutendl;for(inti=0;iNUM;i++)//检测所添加员工的编号是否存在{if(strcmp(Per[i].num,num)==0){cout该编号的已经存在endl;system(pause);//按任意键继续……return;}}p=0;cout请选择:\n\t1.确认添加数据\n\t2.重新输入\n\t3.返回主菜单endl;cinp;//控制是否确认添加数据if(p'1'||p'3'){cout没有这个选项!\n请重新输入:endl;Sleep(1000);continue;}if(p=='2')//重新输入数据{continue;}if(p=='3')//返回主菜单{return;}Per[NUM].setPerson(num,name,sex,bir
本文标题:面向对象程序设计课程设计报告-正文参考模
链接地址:https://www.777doc.com/doc-3261675 .html