公司人事管理系统代码和文档

  • 格式:doc
  • 大小:463.12 KB
  • 文档页数:26

下载文档原格式

  / 26
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

公司人事管理系统

专业软件工程移动应用开发

学生姓名郭迁迁

班级

学号

指导教师

完成日期2014/6/20

1、功能图

2、类图

3、界面

不同用户进入的选择界面

老板进入的界面员工进入的界面

4、数据存储结构

保存方式:采用二进制进行数据的保存

结构:在每对员工的数据信息进行操作时,首先读取文件,然后进行下面增删查改等相应的操作,在对相应操作后自动进行数据的存盘 读取方式:读取链表,写入文件。

5、总结和体会

通过这一次C++课程设计,让我学到了很多,让我学到对一个大型系统的设计不止是对代码的实现,要有一个洞察全局的心,就是先想好,有一个大致的规划,然后再去用代码实现非常容易,如果不想好就会写代码,那么会遇到很多问题,有时会使所做的功夫白费,所以提前想好是非常重要的。

在写公司人事管理系统时我遇到了很多问题,例如对文件的添加,使自己没有一点办法,在老师的耐心讲解下,终于完成了文件的添加,使自己对于文件

读取文件信息

进行相应的操作 写入文件 退出系统

有了新的认识,老师为我们讲解了类的实现,使自己有了新的理解,还让我体会到了交流的重要性,我虽然是社团的人员,但是很少和别人交流。我要学会去和别人交流想法。

代码如下:

#include

#include

using namespace std;

void Link();

class Person

{

protected:

char name[10];//姓名

char level[20];//级别

int NO;//编号

int Flag;//标记

public:

Person *next;

Person(char na[10],char le[20],int no,int F);

Person(){}

~Person(){}

virtual void Show(){}

virtual double Wage(){}

int Get_NO();

char *Get_Name();

char *Get_Level();

int Get_Flag();

int *Get_Flag1();

};

Person::Person(char na[10],char le[20],int no,int F)

{

strcpy(name,na);

strcpy(level,le);

NO=no;

Flag=F;

}

int Person::Get_NO()

{

return NO;

}

char *Person::Get_Name()

{

return name;

}

char *Person::Get_Level()

{

return level;

}

int Person::Get_Flag()

{

return Flag;

}

int *Person::Get_Flag1()

{

return &Flag;

}

class Manager:public Person//经理manager.

{

public:

Manager(char na[10],char le[20],int no,int F):Person(na,le,no,F){}

Manager(){}

double Wage();

void Show();

};

double Manager::Wage()

{

return 5000;

}

void Manager::Show()

{

cout << "编号:" << NO << "\t" << "级别:" << level << "\t" << "名字:" << name << "\t"<< "工资" << Wage()<< endl;

}

class Technical:public Person//技术人员technical

{

private:

double number;//代码量

public:

Technical(char na[10],char le[20],double dm,int no,int F);

Technical(){}

~Technical(){}

double Wage();

void Show();

};

Technical::Technical(char na[10],char le[20],double dm,int no,int F):Person(na,le,no,F)

{

number=dm;

}

double Technical::Wage()

{

return number*1000;

}

void Technical::Show()

{

cout << "编号:" << NO << "\t" << "级别:" << level << "\t" << "名字:" << name << "\t"<< "工资" << Wage()<< endl;

}

class Business:public Person//业务人

{

private:

double sale,amount;//sale该业务人员当月销售额amount该业务员当月项目额public:

Business(char na[10],char le[20],double sa,double am,int no,int F);

Business(){}

~Business(){}

double Wage();

void Show();

};

Business::Business(char na[10],char le[20],double sa,double am,int no,int F):Person(na,le,no,F) {

sale=sa;

amount=am;

}

double Business::Wage()

{

return sale*1.5+amount*0.1;

}

void Business::Show()