公司人事管理系统代码和文档
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 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()