C++大学人员信息管理系统报告文档格式.docx

上传人:b****6 文档编号:21248305 上传时间:2023-01-28 格式:DOCX 页数:60 大小:98.98KB
下载 相关 举报
C++大学人员信息管理系统报告文档格式.docx_第1页
第1页 / 共60页
C++大学人员信息管理系统报告文档格式.docx_第2页
第2页 / 共60页
C++大学人员信息管理系统报告文档格式.docx_第3页
第3页 / 共60页
C++大学人员信息管理系统报告文档格式.docx_第4页
第4页 / 共60页
C++大学人员信息管理系统报告文档格式.docx_第5页
第5页 / 共60页
点击查看更多>>
下载资源
资源描述

C++大学人员信息管理系统报告文档格式.docx

《C++大学人员信息管理系统报告文档格式.docx》由会员分享,可在线阅读,更多相关《C++大学人员信息管理系统报告文档格式.docx(60页珍藏版)》请在冰豆网上搜索。

C++大学人员信息管理系统报告文档格式.docx

1.2.2课程设计的意义

(1)通过课程设计的综合训练,培养了学生分析解决实际问题和编程等实际动手能力。

帮助了同学系统的掌握C++课程的主要内容。

(2)通过详细的实例分析,循环渐进的描述,启发学生顺利的完成设计。

课程设计将设计要求、需求分析、算法设计、编程和实例测试运行分开,为学生创造分析问题、独立思考的条件。

(3)通过编写一个较长的程序,实现了对人员信息的管理,激发了学生学习编程的兴趣。

1.3课程设计环境

在MicrosoftVisualC++6.0开发平台上编写程序源代码,修改,增加功能,通过编译、连接,直到完全无误,最终执行程序,反复输入新的数据进行验证并进一步完善。

第二章需求分析

2.1问题描述

某高校,主要人员有:

领导、教师和学生,共有的信息包括:

编号、姓名、性别、年龄。

其中领导还应包含的信息有:

任职部门(学院、各系部)、职称;

教师还应包含的信息有:

职称、任职时间、专业;

学生还应包含的信息有:

所在班级、所在宿舍等。

2.2功能要求

对各类人员信息完成的基本功能有:

1)添加功能:

程序能够添加相应的记录;

2)查询功能:

能根据编号和姓名进行查询,并显示相应的记录信息;

3)编辑功能:

根据查询结果对相应的记录进行修改;

4)统计功能:

能根据多种参数进行人员的统计;

5)删除功能:

根据查找结果,完成具体记录的删除;

6)保存功能:

将对高校人员信息进行的添加、删除、修改结果保存到文本文件中。

2.3问题的解决方案

根据系统功能要求,可以将问题解决分为以下步骤:

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

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

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

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

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

6)完成系统的应用模块;

7)功能调试;

8)完成系统总结报告。

第三章系统设计

3.1数据设计

3.1.1类设计

人员有共同的信息编号number、姓名neme、性别sex、年龄age,所以设计一个基类people,在此基础上派生出leader类(添加数据成员任职部门bumen,职称zhicheng),teacher类(添加数据成员职称zhicheng,任职时间time,专业project),student类(添加数据成员班级banji,宿舍sushe)。

基类people中包含设置成员值的set函数,添加成员的add函数。

在派生类leader,teacher,student中对set和add进行重新定义。

为了对信息进行添加、删除、查找等功能,定义leaderbase,teacher,student类,分别定义对象数组,定义指向对象的指针,以leaderbase类为例,inttop;

人数leaderread[Maxr];

领导类数组;

leaderbase()将领导信息从leader.txt读取到read[]中,voiddelnu(intu)编号删除,voiddelname(char*na)姓名删除,voidclear()删除所有,voiddisp()领导信息显示,voiddata()领导维护,~leaderbase()将read[]中的信息读入到leader.txt中。

3.1.2类之间的关系

由people类派生出leader,teacher,student类,leaderbase类调用leader类,teacherbase类调用了teacher类,studentbase类调用了student类.。

派生类对基类的成员进行继承。

继承是面向对象程序设计中软件重用的关键技术。

继承机制使用已经定义的类作为基础建立新的类定义,新的类是原有类的数据、操作和新类所添加的数据、操作的组合。

新的类把原有类作为基类引用,而不需要修改原有类的定义。

3.1.3函数设计

leaderbase()将领导信息从leader.txt读取到read[]中,voiddelnu(intn)编号删除,voiddelname(char*na)姓名删除,voidclear()删除所有,voiddisp()领导信息显示,voiddata()领导数据维护,实现领导信息的添加、删除、查询、显示、统计、更改功能。

~leaderbase()将read[]中的信息读如到leader.txt中。

当删除和查找时调用两个函数leader*query(intn),leader*query1(char*na),看删除或查找的领导是否存在,若存在,返回指向leader类的指针,若不存在,返回空指针。

3.2结构设计

3.2.1系统流程图

3.2.2界面设计

登入高校管理系统界面如图3-2所示

图3-2界面菜单设计

程序开始运行,通过主函数进入系统主界面(如上图所示),操作员可键入数字信息选择系统的各个功能或退出系统。

每种功能的界面都有相应的提示(以输入领导为例):

在添加信息功能中系统提示“请输入领导的性别为男或女,如果输入错误,会输出“输入性别错误,请重新输入”在新增时系统会同时计算输入男女领导的人数;

在更改中系统提供了按姓名或编号修改,在修改前系统会输出该领导的全部信息,修改时系统会输出是否更改;

删除中系统提供了按编号或姓名删除,删除前系统会再次提醒使用者是否确定删除;

在查找中亦提供了按编号或姓名查找;

在输入完毕后按0返回主菜单。

,以便操作员更方便地使用该系统

注:

各子菜单项均有重新显示,并顺利返回到主菜单。

如果要保存信息的数据,必须退出到主菜单,系统会自动保存;

System(“cls”)清除以前的内容,界面重新显示。

System(“color23”)设置当前的窗口和输出字体的颜色

第四章系统实现

4.1类实现

classpeople//人员基类

{

protected:

intnumber;

//编号

charname[20];

//姓名

charsex[4];

//性别

intage;

//年龄

public:

voidshow()

cout<

<

"

编号"

setw(10)<

姓名"

性别"

年龄"

endl;

number<

name<

sex<

age<

}

voidset()

{

请输入编号:

cin>

>

number;

请输入姓名:

name;

请输入性别:

sex;

请输入年龄:

age;

}

char*getname(){returnname;

}//获取名字

intgetno(){returnnumber;

}//获取编号

intgetage(){returnage;

}//获取年龄

char*getsex(){returnsex;

}//获取性别

voidren(intn){cout<

n<

voidadd(intn,char*na,intag,char*se)

number=n;

age=ag;

strcpy(name,na);

strcpy(sex,se);

};

classleader:

publicpeople//领导类

private:

charbumen[20];

charzhicheng[20];

voidset1()

set();

cout<

请输入任职部门:

cin>

bumen;

请输入职称:

zhicheng;

voidsetbu(charbu[])

strcpy(bumen,bu);

voidsetzhi(charzhi[])

strcpy(zhicheng,zhi);

voidshow1()

show();

部门"

职称"

bumen<

zhicheng<

voidadd1(intn,char*na,intag,char*se,char*bu,char*zhi)

add(n,na,ag,se);

char*getbu(){returnbumen;

}//获取部门

char*getzhi(){returnzhicheng;

}//获取职称

类似的,在people类的基础上派生出student类,teacher类。

4.2函数实现

voidleaderbase:

:

data()//定义领导维护

{

intchoice=1;

intb=1;

//标记变量

charx;

intnan=0;

//男领导

intnv=0;

//女领导

//姓名

//编号

charzhi[20];

///职称

charbu[20];

//系部

leader*r;

while(choice!

=0)

{

领导维护1:

新增2:

更改3:

删除4:

查找5:

显示6:

全删7:

统计0:

退出=>

;

choice;

switch(choice)

{

case1:

//新增

system("

color17"

);

//颜色

cls"

//清屏

输入领导编号:

cin>

输入领导姓名:

输入领导年龄:

"

输入领导性别(maleorf):

cin>

if(strcmp("

male"

sex)!

=0&

&

strcmp("

f"

=0)

{

while(b)

{

cout<

输入性别有误,请重新输入:

cin>

sex)==0||strcmp("

sex)==0)

b=0;

}

}

{nan++;

}//统计男女领导的人数

else

{nv++;

输入领导所在系部:

bu;

输入领导的职称:

zhi;

add(number,name,age,sex,bu,zhi);

break;

case2:

//根据查询结果更改

colorf4"

//颜色

cout<

按编号更改1"

按姓名更改2"

返回0"

b;

while(b)

switch(b)

case1:

r=query(number);

if(r==NULL)

{cout<

该领导不存在"

break;

}

r->

show1();

是否确认更改任职部门?

(Y/N)"

x;

if(x=='

Y'

||x=='

y'

{

cout<

输入新的任职部门:

setbu(bu);

}

是否确认更改职称?

{

请输入新的职称"

setzhi(zhi);

add(number,name,age,sex,bu,zhi);

r->

r=query1(name);

{cout<

{cout<

add(number,name,age,sex,bu,zhi);

}

case3:

break;

}

break;

//删除

colorf1"

//颜色同样是调用doc

按编号删除1"

按姓名删除2"

while(b!

switch(b)

case1:

delnu(number);

{cout<

delname(name);

b=0;

}

break;

case4:

//查找

color07"

cout<

按编号查找1"

按姓名查找2"

{

switch(b)

输入领导姓名:

case3:

case5:

//显示信息

colorfa"

disp();

case6:

colorfd"

clear();

case7:

color48"

统计男领导人数1"

统计女领导人数2"

该高校男领导人数"

ren(nan);

b=0;

该高校女领导人数"

ren(nv);

case3:

类似的,定义teacherbase类与studentbase类的数据维护data函数,实现对人员信息的新增、更改、删除、查找、显示、全删、统计功能。

4.3主函数实现

intmain()

{A:

intchoice=1;

leaderbasel;

teacherbaset;

studentbases;

while(choice!

{cout<

********************************************************************************"

setw(20)<

******************************欢迎使用高校人员管理系统**************************"

setw(50)<

-------------\n"

请选择您所需的操作\n"

\n"

操作1,领导信息管理\n"

操作2,教师信息管理\n"

操作3,学生信息管理\n"

操作0,退出信息管理系统\n"

switch(choice)

{case1:

while

(1)

setw(20);

l.data();

gotoA;

case2:

while

(1)

t.data();

s.data();

}

return0;

第五章系统测试

5.1模块测试

以管理领导信息为例进行说明。

(1)选择对领导信息进行添加,见图5—1

图5—1

(2)添加界面如图5—2

图5—2

(3)可以按编号和姓名进行更改,见图5—3

图5—3

(4)按编号更改如图5—4

图5—4

(5)按姓名删除如图5—5

图5—5

(6)可以按姓名、编号进行查找,如图5—6

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 幼儿教育 > 唐诗宋词

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1