C课设高校人员信息标准管理系统附全部代码_第1页
C课设高校人员信息标准管理系统附全部代码_第2页
C课设高校人员信息标准管理系统附全部代码_第3页
C课设高校人员信息标准管理系统附全部代码_第4页
C课设高校人员信息标准管理系统附全部代码_第5页
已阅读5页,还剩98页未读 继续免费阅读

下载本文档

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

文档简介

《基于C++面向对象程序设计实例》

课程设计汇报

汇报题目:_____________________________

高校人员信息管理系统

作者所在系部:计算机科学和工程系

作者所在专业:计算机科学和技术

作者所在班级:_________________

作者姓名:_________________

指导老师姓名:_________________

完成时间:6月

《基于C++面向对象程序设计实例》任务书

一.目标和要求

1、目标

(1)要求学生能够熟练掌握C++语言基础知识和技能。

(2)基础掌握面向对象程序设计基础思绪和方法。

(3)能够利用所学基础知识和技能,处理简单面向对象程序设计问题。

2、基础要求

(1)要求利用面向对象方法和C++编程思想来完成系统设计。

(2)在系统设计中,要求利用面向对象机制(继承、派生及多态性)来实现系统功

效,而且要建立清楚类层次关系。

(3)在系统设计中要分析和定义各个类,每个类中要有各自数据组员和组员函数。

(4)主函数中提供菜单选项,并给出足够选择信息和提醒信息。

(5)程序含有一定健壮性,不会因为用户输入错误引发程序运行错误而中止

实施。

对输入值类型、大小范围、字符串长度等,进行正确性检验,对不正当输入值给出

犯错信息,指犯错误类型,等候重新输入。

3、创新要求

在基础要求达成后,可依据实际情况进行创新设计,如依据查找结果进行修改功效

及设计出比较友好界面等,

二.验收方法

完成设计内容以后,即可开始验收。验收时,首先由学生简明说明所做题目标思绪、

设计结构及实现过程,然后运行程序并进行测试,对输出结果作出解释,同时认真回复

老师提出问题。

三.课设汇报

在完成验收以后,提交课设汇报。其中汇报中需包含系统设计要求,设计思绪,系统功效模块

图,系统步骤图,类层次图(包含类组员列表),调试过程,关键程序代码,总结,参考书目等。另

外,课设汇报要严格遵守模板文件格式要求,思绪清楚,内容详实丰富。

四.成绩评定

课设总成绩二验收成绩(50%)+课程设计汇报成绩(30%)+程序源代码(10%)+

课设态度、考勤和遵守教学制度情况(10%)

五.说明

1、每位同学在以下题目中任选一个来完成。

2、学生应严格遵守课堂秩序,按时上机,认真完成各项任务。

3、上机前做好充足准备,包含事先写好关键程序代码,以确保充足利用上机时间调

试程序。

4、每位同学各自独立完成自己题目,严禁剽窃或拷贝。

5、必需按要求时间上交课设汇报。

六.课设题目

题目1“高校职员信息管理系统”

1、问题描述

某高校有四类职员:老师、试验员、行政人员,老师兼行政人员;共有信息包含:

编号、姓名、性别、年纪等。其中,老师还包含信息有:所在系部、专业、职称;试验

员还包含信息由:所在试验室、职务;行政人员还包含信息有:政治面貌、职称等。

2、功效要求

(1)基础功效

1)添加功效:程序能够任意添加上述四类人员统计,可提供选择界面供用户选择所

要添加人员类别,要求职员编号耍唯一,假如添加了反复编号统计时,则提醒数据添加

反复并取消添加。

2)查询功效:可依据编号、姓名等信息对已添加统计进行查询,假如未找到,给出

对应提醒信息,假如找到,则显示对应统计信息。

3)显示功效:可显示目前系统中全部统计,每条统计占据一行。

4)编辑功效:可依据查询结果对对应统计进行修改,修改时注意编号唯一性。

5)删除功效:关键实现对已添加人员统计进行删除。假如目前系统中没有对应人员

统计,则提醒“统计为空!”并返回操作;不然,输入要删除人员编号或姓名,依据所输

入信息删除该人员统计,假如没有找到该人员信息,则提醒对应统计不存。

6)统计功效:能依据多个参数进行人员统计。比如,统计四类人员数量和总数,

或统计男、女职员数量,或统计某年纪段人员数量等。

7)保留功效:可将目前系统中各类人员统计存入文件中,存入方法任意。

8)读取功效:可将保留在文件中人员信息读入到目前系统中,供用户进行使用。

(2)扩展功效

在完成以上基础功效基础上,可自行进行扩展或完善,比如:

1)添加人员统计时,考虑多种数据有效性。

2)组合查询功效实现。

3)可按人员一些信息进行排序。

4)对文件读写使用二进制信息。

3、问题处理方案

依据系统功效要求,能够将问题处理分为以下步骤:

1)应用系统分析,建立该系统功效模块框图和界面组织和设计;

2)分析系统中各个实体及它们之间关系;

3)依据问题描述,设计系统类层次;

4)完成类层次中各个类描述;

5)完成类中各个组员函数定义;

6)完成系统应用模块;

7)功效调试;

8)完成系统总结汇报。

摘要

在目前学校人员管理体制下,高等学校不仅要有浓厚学风气息、雄厚师资力量、优

异精良硬件设备,和此同时,作为优异科学技术和优异文化承载者和传输者,更需要有

一个实施效率高而且便于操作现代信息化管理系统,以实现对高校各类人员进行添加、

查找、修改、删除、统计、保留、读取等动态管理目标。

本文利用MicrosoftVisualC++6.0AD0编写程序,实现了高校对试验员、老师、行

政人员、老师兼行政人员管理操作。

本系统关键有四个管理模块一一试验员管理系统、老师管理系统、行政人员管理系

统、老师兼行政人员管理系统。己经过全方面系统测试,能够很好运行,达成了预期效

果。

关键词:系统设计类信息人员管理

目录

摘要.......................................................................I

第1章绪论.............................................................1

1.1课程设计目标.......................................................1

1.2课程设计背景和意义.................................................1

1.1.1课程设计背景..................................................1

1.1.2课程设计意义..................................................1

1.3课程设计环境.......................................................1

第2章需求分析...........................................................2

2.1问题描述...........................................................2

2.2功效需求..........................................................2

2.3问题处理方案......................................................3

第3章系统设计...........................................................4

3.1数据设计..........................................................4

3.1.1类设计.......................................................4

3.1.2类之间关系...................................................5

3.2结构设计..........................................................6

3.2.1系统步骤图...................................................6

3.2.2界面设计.....................................................6

第4章系统实现...........................................................9

4.1类实现............................................................9

4.2函数实现..........................................................11

4.3主函数实现.......................................................21

第5章系统测试..........................................................23

5.1模块测试.........................................................23

5.2课程设计过程中碰到问题...........................................32

总结.......................................................................33

致谢.......................................................................34

参考文件..................................................................35

第1章绪论

1.1课程设计目标

(I)要求学生能够熟练掌握C++语言基础知识和技能。

(2)基础掌握面向对象程序设计基础思绪和方法。

(3)能够利用所学基础知识和技能,处理简单面向对象程序设计问题。

1.2课程设计背景和意义

1.2.1课程设计背景

1.理论研究基础

(1)综合C++编程知识,结合实际加以应用。

(2)参考书本对书本熟悉,应用类、数组等内容。

2.技术层面支持

安装MicrosoftVisualC++6.0集成开发环境。

1.2.2课程设计意义

综合复习《C++面向对象程序设计》全部知识点,深入熟练面向对象程序开发方法和步

骤,提升学生独立分析问题和处理问题能力,培养学生中、小型实践项目开发能力。

让我们提前感受到编写软件过程和处理问题方法。

1.3课程设计环境

软件环境:MicrosoftVisualC++6.0集成开发环境。

硬件环境:图书馆五楼机房,笔记本电脑。

第2章需求分析

2.1问题描述

某高校有四类职员:老师、试验员、行政人员,老师兼行政人员;共有信息包含:编

号、姓名、性别、年纪等。其中,老师还包含信息有:所在系部、专业、职称;试验员还

包含信息由:所在试验室、职务;行政人员还包含信息有:政治面貌、职称等

2.2功效要求

(1)基础功效

1)添加功效:程序能够任意添加上述四类人员统计,可提供选择界面供用户选择所要

添加人员类别,要求职员编号要唯一,假如添加了反复编号统计时,则提醒数据添

加反复并取消添加。

2)查询功效:可依据编号、姓名等信息对已添加统计进行查询,假如未找到,给出对

应提醒信息,假如找到,则显示对应统计信息。

3)显示功效:可显示目前系统中全部统计,每条统计占据一行。

4)编辑功效:可依据查询结果对对应统计进行修改,修改时注意编号唯一性。

5)删除功效:关键实现对已添加人员统计进行删除。假如目前系统中没有对应人员统

计,则提醒“统计为空!”并返回操作;不然,输入要删除人员编号或姓名,依据

所输入信息删除该人员统计,假如没有找到该人员信息,则提醒对应统计不存。

6)统计功效:能依据多个参数进行人员统计。比如,统计四类人员数量和总数,

或统计男、女职员数量,或统计某年纪段人员数量等。

7)保留功效:可将目前系统中各类人员统计存入文件中,存入方法任意。

8)读取功效:可将保留在文件中人员信息读入到目前系统中,供用户进行使用。

(2)扩展功效

在完成以上基础功效基础上,可自行进行扩展或完善,比如;

1)添加人员统计时,考虑多种数据有效性。

2)组合查询功效实现。

3)可按人员一些信息进行排序。

4)对文件读写使用二进制信息。

2.3问题处理方案

依据系统功效要求,能够将问题处理分为以下步骤:

1)应用系统分析,建立该系统功效模块框图和界面组织和设计;

2)分析系统中各个实体及它们之间关系;

3)依据问题描述,设计系统类层次;

4)完成类层次中各个类描述;

5)完成类中各个组员函数定义;

6)完成系统应用模块;

7)功效调试;

8)完成系统总结汇报。

第3章系统设计

3.1数据设计

3.1.1类设计

此系统共设计了九个类:基类(classPerson),试验员类(classExperimenter),老师类

(classTeacher),行政人员类(clas*Staff),老师兼行政人员类(class)

基类中有

intnum;公用数据组员用于统计类组员编号

intage;公用数据组员用于统计类组员年纪

stringname;公用数据组员用于统计类组员姓名

stringsex;公用数据组员用于统计类组员性别

virtualvoidInput();公有数据组员函数用于输入组员信息

virtualvoidOutput();公有数据组员函数用于输出组员信息

intGetNum();公有数据组员函数用于取得组员编号

stringGetName();公有数据组员函数用于取得组员姓名

试验员类中添加了

stringlibrary;公有数据组员用于统计类组员试验室

stringzw;公有数据组员用于统计类组员职务

intchoice2;公有数据组员用于选择组员性别

老师类中添加了

stringdepart;公有数据组员用于统计类组员部门

stringspec;公有数据组员用于统计类组员专业

siring(ide;公有数据组员用于统计类组员职称

intchoice1;公有数据组员用于选择组员部门

intchoice2;公有数据组员用于选择组员性别

行政人员类中添加了

stringzzmm;;公有数据组员用于统计类组员政治面貌

stringzc;公有数据组员用于统计类组员任职职称

intchoice2;公有数据组员用于选择组员性别

老师兼行政人员类添加了

intchoiccl;公有数据组员用于选择组员部门

intchoice2;公有数据组员用于选择组员性别

还有四个功效相同功效函数类,其中有Exp_Manage类Tea_Manage类Staf_Manage

类Tea_Staf_Manage类c分别实现不一样对应功效。

Tea_StaTea[TMAXJ;TMAX为常量,为数组中可存放老师统计最大数;

inttop;top表示目前系统中存放统计个数;

Tea_Staf_Manage(){iop=0;}初始时统计个数为0,所以设置top=0;

voidAdd();实现该类统计添加;

voidShow();实现该类全部统计显示;

voidSearchO;实现该类统计杳询:

voidEdit();实现该类统计修改;

voidDelete();实现该类统计删除;

voidTotal();实现该类统计统计;

voidSave();将该类统计保留到文件;

voidRead();可从文件中将统计读取到该类数组中;

试验员、老师、行政人员管理类中函数全部相同,在此略。

3.1.2类之间关系

基类:(classPerson)派生类有:(classExperimenter),(classTeacher),(classStaff)

(classTea_Sta)

四个平行关系类,实现不一样类功效;(classExp_Managc)(classTca_Managc)(class

Staf_Manage)(classTea_StaCManage)

3.1.3函数设计

在四个管理类中定义了以下相同函数,功效如其后所说

voidAdd();实现该类统计添加;

voidShow();实现该类全部统计显示;

voidSearch();实现该类统计查询;

voidEdit();实现该类统计修改;

voidDelete();实现该类统计删除;

voidTotal();实现该类统计统计;

voidSave();将该类统计保留到文件;

voidRead();可从文件中将统计读取到该类数组中;

3.2结构设计

3.2.1系统步骤图

图3-1

3.2.2界面设计

主菜单界面

图3—2主菜单界面图

试验员类菜单界面

图3—3试验员类菜单界面图

老师类菜单界面

|*F:\LY\^^\Debug\zhangxiangying.exe

…欢迎进入北华领,天工业学院人员管理系统…

K<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<

1=>实物员管理2=>教师管理3=>行政管理4=教师行政管理。=>退出系统

»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»

请输入您的选择:2

教师管理***

:1.添加2.查找3.修改4.删除5.显示6.保存7.读取8.统计退出;

输入您操作的选项:

图3-4老师类菜单界面图

政人员管理菜单界面

图3—5政人员管理菜单界面图

老师兼行政人员管理菜单界面

八"F:\LY\课设\Debug\zhangxiangying.exe"|

***欢迎进入

XXXXX"T;^^.^.xxxxx

<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<

/1=>实验员管理2=>教师管理3=>行政管理4=教师行政管理。=>退出系统!!

»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»

请输入您的选择:4

****教师兼行政人员管理***

:1.添加2.查找3.修改4.删除5.显示6.保存7.读取8.统计0=>退出;

输入您操作的选项:.

5

图3-6老师兼行政人员管理菜单界面图

第4章系统实现

4.1类实现

对于基类定义

classPerson

(

public:

intnum;公用数据组员用于统计类组员编号

intage;公用数据组员用于统计类组员年纪

stringname;公用数据组员用于统计类组员姓名

stringsex;公用数据组员用于统计类组员性别

public:

Person(intn=0,stringnm='n,,strings="",inta=O):num(n),name(nm),sex(s),age(a){};

virtualvoidInput(){};

virtualvoidOutput。:};

intGetNum(){returnnum;}公有数据组员函数用于取得组员编号

stringGetName(){returnname;)公有数据组员函数用于取得组员姓名

);

对试验员派生类定义

classExperimenter:publicPerson

I

public:

stringlibrary;公有数据组员用于统计类组员试验室

stringzw;公有数据组员用于统计类组员职务

intchoice2;公有数据组员用于选择组员性别

public:

Experimenter(intn=0,stringnm="",strings="男",inta=(),stringstringz=,,w)

:Person(num,name,sex,age),library(l),zw(z){);

voidInput()组员函数用于输入组员信息

voidOutput()组员函数用于输出组员信息

};

对于老师派生类定义

classTeacher:virtualpublicPerson

{

public:

stringdepart;公有数据组员用于统计类组员部门

stringspec;公有数据组员用于统计类组员专业

stringtitle;公有数据组员用于统计类组员职称

intchoice1;公有数据组员用于选择组员部门

intchoice2;公有数据组员用于选择组员性别

public:

Tcacher(intn=0,stringnm="M,strings=n男=inta=0,stringd="电子系M,string

sp=H,,.stringt=uu)

:Person(n,nm,s,a),depart(d),spec(sp),title(t){};

voidInput()组员函数用于输入组员信息

voidOutput()组员函数用于输出组员信息

对于行政人员派生类定义

classStaff:virtualpublicPerson

(

public:

stringzzmm;;公有数据组员用于统计类组员政治面貌

stringzc;公有数据组员用于统计类组员任职职称

intchoicc2;公有数据组员用于选择组员性别

public:

Staff(intn=0,stringnm="M,strings="男",inta=0,stringz="n,stringzc="")

:Person(n,nm,s,a),zzmm(z),zc(zc){};

voidInput()组员函数用于输入组员信息

voidOutputO组员函数用于输出组员信息

);

对于老师兼行政人员类定义

classTea_Sta:publicTeacher,publicStaff

(

public:

intchoice1;公有数据组员用于选择组员部门

intchoice2;公有数据组员用于选择组员性别

Tea_Sta(intn=(),stringnm=,,u,strings="男=inta=(),stringd=M电子系",string

sp=M",stringstringz=,,M,stringzc=uu)

:Person(n,nm,s,a),Teacher(n,nm,s,a,sp4),Staff(n,niTi,s,a,z,zc){};

voidInput()组员函数用于输入组员信息

voidOutputO组员函数用于输出组员信息

);

对于在四个管理类中函数功效全部相同,以老师类为例

classTea_Manage

TeacherTeafTMAX];TMAX为常量,为数组中可存放老师统计最大数;

inttop;top表示目前系统中存放统计个数;

public:

Tea_Manage(){top=0;}初始时统计个数为0,所以设置top=0;

voidAdd();实现该类统计添加;

voidShow。;实现该类全部统计显示;

voidSearch();实现该类统计查询;

voidEdit();实现该类统计修改;

voidDelete();实现该类统计删除;

voidTotal();实现该类统计统计;

voidSave();将该类统计保留到文件;

voidRcad();可从文件中将统计读取到该类数组中;

4.2函数实现

对于在四个管理类中定义了相同函数,以老师类为例

添加功效:程序能够任意添加上述四类人员统计,可提供选择界面供用户选择所要添

加人员类别,要求职员编号要唯一,假如添加了反复编号统计时,则提醒数据添加反复并

取消添加

voidTea_Manage::Add()

if(top>=TMAX)

(

cout«"用户已满"vvendl;

return;

Teachert;

coutvv”输入新添加人员信息,<<endl;

t.Input();

for(inti=0;i<top;i++)

if(t.GetNum()==Tea[i].GetNum())

cout<<”该编号人员己存在"v<endl;

return;

)

Tca[top]=t;

top=top+1;

coutv<"添加成功!”《endl;

)

显示功效:可显示目前系统中全部统计,每条统计占据一行。

voidTea_Manage::Show()

{

if(top==0)

(

cout<<"无数据!"<<endl;

return;

1

cout«setw(1())<<"编号"

<<setw(10)vv"姓名”

«selw(10)<<“性别”

<<sctw(10)v<“年纪”

<<setw(10)v<“系部”

<<setw(10)<<“专业”

«setw(10)«“职称"

«endl;

for(inti=0;i<top;i++)

Tea[i].Output();

)

查询功效:可依据编号、姓名等信息对已添加统计进行查询,假如未找到,给出对应

提醒信息,假如找到,则显示对应统计信息。

voidTea_Manage::Search()

if(top==0)

cout<<”目前系统中没有存放统计“<<endl;

return;

1

intchoice;

cout<<”请选择杳找方法:1.按编号查找2.按姓名查找J«endl;

cin»choice;

switch(choice)

(

case1:{

coul<<”请输入要查找编号:“<<endl;

intnum;

cin»num;

for(inti=0;i<top;i++)

(

if(Tea[iJ.GetNum()==num)

(

Tea[i].Output();

return;

)

)

coul<<"查无此人!"<<endl;

}break;

case2:{

cout<<”请输入要查找姓名"<<endl;

stringname;

cin»name;

for(inti=0;i<top;i++)

if(Tea[i].GetName()==name)

Tea[iJ.Output();

}

)

for(i=0;i<top;i++)

if(Tea[i].GetName()==name)

return;

cout<<“查无此人!"«endl;

}break;

default:coutv<”无此选项!请重试!”<<endl;break;

1

1

voidTea_Manage::Edit()

(

if(top==0)

(

cout<<”目前系统中没有存放统计!”<<endl;

return;

I

intnum;

cout«n请输入要查找教编号:H«endl;

cin»num;

for(inti=0;i<top;i++)

if(Tea[i].GetNum()==num)

cout<<"请对这位老师信息进行修改:“<<endl;

Tea[i].Input();

coul<<"修改成功"<vendl;return;

)

I

cout<<"查无此人"v<endl;

)

删除功效:关键实现对已添加人员统计进行删除。假如目前系统中没有对应人员统计,

则提醒“统计为空!”并返回操作;不然,输入要删除人员编号或姓名,依据所输入信息删

除该人员统计,假如没有找到该人员信息,则提醒对应统计不存。

voidTea_Manage::Delete()

{

if(top==0)

(

cout«n目前系统中没有存放统计:'<<endl;

return;

)

cout«”l、按编号查找删除2、按姓名查找删除"<vendl;

intchoice;

cin»choice;

switch(choice)

(

case1:

(

cout<<”请输入编号:”;

intnum;

cin»num;

for(inti=0;i<top;i++)

if(num==Tea[i].num)

cout<<"是否确定删除?1、是2、否"«cndl;

intchoice;

cin»choice;

switch(choice)

(

case1:

(

for(intj=i;j<top-1;j++)

Tea[j]=Tea[j+l];

cout<〈”删除成功!"«endl;

top-;

);break;

case2:rcturn;

default:cout<<”无止匕项,失贝攵!"<vendl:break:

(return;

)

)

cout<<"无此人!"«endl;

};break;

case2:

cout«”请输入姓名:”;

stringname;

cin»name;

for(inti=0;i<top;i++)

if(name==Tea[i].name)

(

cout<<”是否确定删除?1、是2、否”<vendl;

intchoice;

cin»choice;

switch(choice)

(

case1:

(

for(intj=i;j<top-1;j++)

TeaU]=TeaU+l];

cout<〈"删除成功!"«endl;

top-;

};brcak;

case2:return:

default:cout<<“无止匕项,失败!"«endl;break;

(return;

1

}

cout<<"无此人!"«endl;

};break;

default:cout<<“没有此项,失败:H«endl;break;

)

1

统计功效:能依据多个参数进行人员统计。匕如,统计类中人员数量和总数,

或统计男、女职员数量,不一样部门职员数量等。

voidTea_Manage::Total()

cout«"1按人数统计2按性别统计3按系别统计"«endl;

intchoice;

cout«"请输入你选择”《endl;

cin»choice;

switch(choice)

(

case1:cout<<"老师类人数为:"《lop<vendl;break;

case2:

(

inta=0,b=0;

for(inti=0;i<lop;i++)

(

if(Tea[i].sex=="")a++;

if(Tea[i].sex=="^<")b++;

)

cout«"男老师人数为"vvavVendl;

cout<<"女老师人数为"«b«endl;

}break;

case3:

(

inta1=0,a2=0,a3=0,a4=0,a5=0,a6=0,a7=0,a8=0,a9=0;

for(inti=0;i<top;i++)

(

if(Tea[i].depart=="电子系")al++;

if(Tea[i].depart二二"机械系")a2++;

if(Tea[i].depart=="经管系")a3++;

if(Tea[i].depart=="建I:系")a4++;

if(Tea[i].depart=="计算机系")a5++;

if(Tea[i].dcpart=="夕卜语系")a6++;

if(Tea[i].depart=="财会系")a7++;

if(Tea[i].depart=="材料系")a8++;

if(Tea[i].depart=="文法系")a9++;

cout<<"电子系老师人数为"«al«endl;

cout<<"机械系老师人数为"«a2«endl;

cout<<"经管系老师人数为"<<a3«endl;

coutvv”建工系老师人数为“v<a4«endl;

cout«"计算机系老师人数为"《a5vvendl;

cout«"外语系老师人数为u«a6«endl;

cout<<"财会系老师人数为"<<a7vvendl;

coutv<"材料系老师人数为”《a8«cndl;

cout<<"文法系老师人数为“vva9«endl;

)break;

default:cout<<"输入错误。请重新输入"《endl;break;

保留功效:可将目前系统中各类人员统计存入文件中,存入方法任意。

voidTea_Manage::Save()

ofstreamout("D:\\ying2.txt",ios::out);

if(!out)

cout<v"打开失败!”vvendl;

return;

)

coutv<”打开成功!”vvendl;

for(inti=0;i<top;i++)

(

out«Tea[i].num«""

«Tea[i].name«M"

v<Tea[i].sex<<""

«Tea[i].age«"H

«Tea[i].depart«u"

«Tea[i].spec«n

«Tea[i].title

«endl;

}

coutvv”写入成功!"vvendl;

out.close();

)

读取功效:可将保留在文件中人员信息读入到目前系统中,供用户进行使用。

voidTea_Manage::Read()

(

ifstreamin("D:\\ying2.txt",ios::in);

if(!in)

(

cout«"JT开失败!"<<endl;

return;

}

inti=0;

while(in»Tea[i].num

»Tea[i].name

»Tea[i].sex

»Tea[il.age

»Tea[iJ.depart

»Tea[i].spcc

»Tea[il.title)

(

Tea[i].Output();

i++;

top++;

}

in.close();

};

老师函数主界面定义

voidTeaMenu()

(

Tea_Managet:

intchoice;

while(choice!=0)

(

cout«"\n***老师管理***

"«endl;

cout<v"++++++++++++-++++++++++++++++++++++++++++++++++++++++”«endl;

cout«M|r«endl;

coutv<”|I.添加2.查找3修改4.删除5.显示6.保留7.读取8.统计0=>退出|"«endl;

cout«M|l"«endl;

cout<<"++++++++++++++++++++++++++++++++++++++++++++++++++++++++”v〈endl;

coutvv"\n输入您操作选项:";

cin»choice;

switch(choice)

(

case1:t.Add();break;

case2:t.Search();break;

case3:t.Edit();break;

case4:t.Delete();break;

case5:t.Show();break;

case6:t.Save();break;

case7:t.Read();break;

case8:l.Tolal();break;

case0:coutv<”退出成功!”<<endl;break;

default:cout<<"无此选项!请重试!"<<endl;break;

)

)

1

系统主菜单函数定义,依据不一样人选择不一样子系统

inimain()

(

cout«H***欢迎进入北华航天工业学院人员管理系统**

intchoice;

do{

cout«n*****主菜单*****\n”《endl;

cout«,,«««««««««««««««««««««««««««"«endl;

cout«n||||"«endl;

cout«"||l=>试验员管理2=>老师管理3=>行政管理4二老师行政管理()=>退出系统

||"«endl;

cout«"||||"«endl;

cout«'»»»»»»>»»»»»»»»»»»»»»»»»»»»'«endl;

cout«"\n请输入您选择:";

cin»choice;

switch(choice)

(

case1:ExpMenu();break;

case2:TeaMenu();break;

case3:StafMenu();break;

case4:Tea_StafMenu();break;

case():cout«"\n您已安全退出系统."<<endl;break;

default:cout«"\n没有此选项.请重选."《endl;break;

)

}while(choice!=0);

cout«n\n***欢迎您下次再使用本系统!***"«endl;

return0;

)

4.3主函数实现

#include<iostream>

#include<string>

#include<fstream>

#include<iomanip>

constintTMAX=50;

usingnamespacestd;

intmain()

cout«n***欢迎进入北华航天工业学院人员管理系统***'vvendl;

intchoice;

do{

cout«n*****主菜单**

cout«"««««««<«««««««««««««««««<«««',«endl;

cout«"||||"«endl;

cout«"||l=>试验员管理2=>老师管理3二〉行政管理4二老师行政管理0=>退出系统

||"«endl;

cout«"||||"«endl;

cout«"»»»»»»>»»»»»»»»»»»»»»»»»»»»H«endl;

cout«"\n请输入您选择:";

cin»choice;

switch(choice)

(

case1:ExpMenu();break;

case2:TeaMenu();break;

case3:StafMenu();break;

case4:Tea_StafMenu();break;

case0:cout«"\n您已安全退出系统."<<endl;break;

default:cout«n\n没有此选项.请重选."《endl;break;

}

}while(choice!=0);

cout«n\n***欢迎您下次再使用本系统!

return0;

第5章系统测试

5.1模块测试

(因为试验员类,老师类,行政人员类,老师兼行政人员类系统功效一样,在此以老

师类为例)

1.添加模块

(输入正确添加信息)

x

Ld

图5—1正确添加界面

(输入错误信息)

图5-2错误添加界而

2.查找模块

(正确编号查找)

图5—3正确编号查找界面

(错误编号查找)

图5—4错误编号查找界面

(

)

图5-5正确姓名查找界面

(错误姓名查找)

图5—6错误姓名查找界面

3..修改模块

(正确修改)

rF:\LY\课设\Debug\zhang*iangying.eze

教师官■理3

工.添加2.查找3.修改4.删除5.显示6.保存7.读取8.统计0=>退出

介入您操件的选项:3

与输入要强找的教编号;

1

thenun

2

nputthename

putthesex”.男2.女)

输入你的选择

2

theage

t

/depart

电t^h

2.机械系3.经管系4.建工系5.计算机系6.外语系7.财会系8.材料系

1.文^

9.

你选择

2

thespec

2

nputthetitle

2

区改成功

图57正确修改界面

(错误修改)

图5—8错误修改界面

4.删除模块

(正确编号删除)

图5-9正确编号删除界面

(错误编号删除)

图5—10错误编号删除界面

(正确姓名删除)

图5—11正确姓名删除界面

(错误姓名删除)

图5—12错误姓名删除界面

5.显示模块

c<*F:\1«丫\课设\061)118\由3118*1311871:£118.eze

3

*«*教师管理***

1.添加2.查找3.修改4.删除5.显示6.保存7.读取8.统计0=>退出

♦+---

++

1项5

.•

1i1电11

222系22

332系22

U

图5-13显不信息界面

6.保留模块

温馨提示

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

评论

0/150

提交评论