资源简介
虽然网上有很多类似的企业管理系统,但我的这个程序实在是精彩绝伦,代码简短(200多行),全部注释,超易理解,只用到两个类就实现了余别人的代码同样的功能,且界面美观友好,很适合新手
以下是具体功能:
1、人员编号在生成人员信息时同时生成,每个人员编号自动加1。
2、程序对所有人员有提升级别的功能。
3、日薪的计算方法:经理拿固定月薪,兼职技术人员按工作小时数领取月薪,兼职推销员的报酬按该推销员当月销售提成。
4、销售经理既拿月薪也领取销售提成。
5、能按姓名或者编号寻找、删除、更新显示各类人员的信息。
代码片段和文件信息
#include
#include
#include
#include
using namespace std;
const int Maxr=100;
int ID=10000;
class Employee //职工类
{
int tag;//删除标记
int no;//职工编号
char name[20];//职工姓名
char zw[20]; //职工职务
int salary;//职工工资
int time;//工作小时
public:
Employee(){}
char *getname() {return name;}//获取名字
int gettag() {return tag;}//获取标记
int getno() {return no;}//获取编号
int getsalary(){return salary;}//获取薪水
int gettime(){return time;}//获取工作时间
void setzw(char q[])//设置职务
{
strcpy(zwq);
}
void setname(char na[])//设置名字
{
strcpy(namena);
}
void getsalary(int sa){salary=sa;}
void delna(){tag=1;}//删除
void addemp(int nint sachar *nachar *q)//增加
{
tag=0;
no=n;
salary=sa;
strcpy(namena);
strcpy(zwq);
}
void disp()//显示职工信息
{
cout<<“│“< cout<<“├—————┼—————┼—————┼—————┤“< }
};
class Database//职工数据类
{
int top;
Employee read[Maxr];
public:
Database()//将职工信息从employee.txt读取到read[]中
{
Employee s;
top=-1;
fstream file(“employee.txt“ios::in);
while (1)
{
file.read((char *)&ssizeof(s));
if (!file) break;
top++;
read[top]=s;
}
file.close();
}
void clear()//删除所有
{
top=-1;
}
int addemp (int n int sachar *nachar*q) //增加职工
{
Employee *p=query(n);
if (p==NULL)
{
top++;
read[top].addemp(nsanaq);
return 1;
}
return 0;
}
Employee *query(int empid)
{
for (int i=0;i<=top;i++)
if (read[i].getno()==empid && read[i].gettag()==0)
return &read[i];
return NULL;
}
/* Employee *query1(char empna[20])
{
for (int i=0;i<=top;i++)
if ((read[i].getname()==empna) && read[i].gettag()==0)
return &read[i];
return NULL;
}*/
void disp() //职工信息显示
{
for (int i=0;i<=top;i++)
read[i].disp();
}
void empdata();
~Database() //将read[]中的信息读如到employee.txt中
{
fstream file(“employee.txt“ios::out);
for (int i=0;i<=top;i++)
if (read[i].gettag()==0)
file.write((char *)&read[i]sizeof(read[i]));
file.close();
}
};
void Database::empdata()//职工维护
{
int choice=1;
int m=1;int b=1;
char rname[20];
int empid; int empsa;char q[20];int time;
Employee *r;
while (choice!=0)
{
cout<<“职工维护 1:新增 2:更改 3:删除 4:查找 5:显示 6:全删 0:退出=>“;
cin>>choice;
switch (choice)
{
case 1:
cout< cout< cout< cout< cout< cout< cout< cin>>m;
while(m!=0)
{
switch(m)
{
case 1:
empid=ID++;
empsa=8000;
cout<<“输入经理姓名:“;
cin>>rnam
- 上一篇:一个C语言编译器源码
- 下一篇:外挂 源码 c++ vc 冒险岛
评论
共有 条评论