C++写的公司员工信息管理系统(可加分)

公司职员信息管理系统一、系统概要公司职员的信息管理程序主要实现以下功能:输入员工的姓名,输出该员工的基本信息、级别以及当月工资信息。需求如下。1、某小型公司,主要由总经理... 公司职员信息管理系统
一、 系统概要
公司职员的信息管理程序主要实现以下功能:输入员工的姓名,输出该员工的基本信息、级别以及当月工资信息。需求如下。
1、 某小型公司,主要由总经理、技术经理和技术人员、销售经理和销售人员。要求存储所有人员的一下信息:姓名、性别、出生年月、技术特长、血型、星座、参加工作时间、接入本公司时间、联系电话、编号、级别、当月薪、计算月薪总额并显示全部信息。
2、 人员的编号从1开始,依次递增。
3、 程序对所有人员有提升级别的功能。假设所有人员的初始级别均为1级,然后进行升级,总经理升为4级,技术经理和销售经理升为3级,技术人员升为2级,销售人员为1级。
4、 月工资计算办法如下:总经理拿固定月薪10000元; 技术经理拿固定月薪6000元加奖金;技术人员拿固定月薪3000元加奖金;销售经理既拿固定月薪也领取销售提成,固定月薪为4000元,销售提成为所辖部门的当月销售总额的5‰;销售人员的月薪按当月销售额的1%提成。
5、 考核结果作为升级和工资提成的依据,考核结果按百分制计算。
二、 基本功能要求
设计一个基类employee,然后派生出technician(技术人员)类、manager(经理)类和saleman(销售人员)类共3类,在此基础上通过继承和派生实现其它类。职员信息要求保存到文件。对部分数据应设置有操作权限。
三、 功能描述
1、 新进入公司员工基本信息的输入。
2、 公司员工基本信息的查询、修改。
3、 离开公司员工信息的处理。
4、 与员工级别有关的操作。
5、 与月薪有关的操作。
6、 与人员考核有关的操作。
四、 主要知识点
1、 C语言程序设计技术,特别是数组和指针的应用。
2、 面向对象程序设计技术,特别是继承和派生以及文件的操作。
备注:对使用可视化技术编程者,将给予5—15分的加分
展开
 我来答
suntaichuan
推荐于2018-04-13
知道答主
回答量:3
采纳率:0%
帮助的人:0
展开全部
#include<iostream>
#include<string>
using namespace std;
class employee
{
public:
string name;
string sex;
string techang;
string xuexing;
string xingzuo;
string attend;
string getin;
string birthday;
int static number;
int grade;
int money;
long call;
employee(){number++;grade=1;};
void virtual input(){};
void show()
{
cout<<"姓名:"<<name<<" ";
cout<<"性别:"<<sex<<" ";
cout<<"年月:"<<birthday<<" ";
cout<<"特长:"<<techang<<" ";
cout<<"血型:"<<xuexing<<" ";
cout<<"星座:"<<xingzuo<<" ";
cout<<"参加公司时间:"<<attend<<" ";
cout<<"进入公司时间:"<<getin<<" ";
cout<<"月薪:"<<money<<" ";
cout<<"编号:"<<number<<" ";
cout<<"级别:"<<grade<<" "<<endl;
};
};
int employee::number=0;
class technician:public employee
{
public:
technician(){money=3000;};
void input()
{
cout<<"姓名:";cin>>name;cout<<endl;
cout<<"性别:";cin>>sex;cout<<endl;
cout<<"年月:";cin>>birthday;cout<<endl;
cout<<"特长:";cin>>techang;cout<<endl;
cout<<"血型:";cin>>xuexing;cout<<endl;
cout<<"星座:";cin>>xingzuo;cout<<endl;
cout<<"参加公司时间:";cin>>attend;cout<<endl;
cout<<"进入公司时间:";cin>>getin;cout<<endl;
};

};
class manger:public employee
{
public:
int x;
void input()
{
int x;
cout<<"姓名:";cin>>name;cout<<endl;
cout<<"性别:";cin>>sex;cout<<endl;
cout<<"经理类型(1 总经理,2 销售经理,3 技术经理):";cin>>x;
switch(x)
{
int y,z;
case 1:
money=10000;break;
case 2:
cout<<"销售额:";cin>>y;money=4000+y/20;break;
case 3:
cout<<"奖金:";cin>>z;money=6000+z;break;
};
cout<<"年月:";cin>>birthday;cout<<endl;
cout<<"特长:";cin>>techang;cout<<endl;
cout<<"血型:";cin>>xuexing;cout<<endl;
cout<<"星座:";cin>>xingzuo;cout<<endl;
cout<<"参加公司时间:";cin>>attend;cout<<endl;
cout<<"进入公司时间:";cin>>getin;cout<<endl;
};
};
class saleman:public employee
{
public:
int m;
void input()
{
cout<<"姓名:";cin>>name;cout<<endl;
cout<<"性别:";cin>>sex;cout<<endl;
cout<<"年月:";cin>>birthday;cout<<endl;
cout<<"销售额:";cin>>m;money=m;cout<<endl;
cout<<"特长:";cin>>techang;cout<<endl;
cout<<"血型:";cin>>xuexing;cout<<endl;
cout<<"星座:";cin>>xingzuo;cout<<endl;
cout<<"参加公司时间:";cin>>attend;cout<<endl;
cout<<"进入公司时间:";cin>>getin;cout<<endl;
};
};
void main()
{
int n;
manger a;
technician b;
saleman c;
cout<<"***通信09-3***孙太川***20092258****"<<endl;
cout<<"***********************************"<<endl;
cout<<"* 主菜单 *"<<endl;
cout<<"* 1 输入职工信息 *"<<endl;
cout<<"* 2 查询职工信息 *"<<endl;
cout<<"* 3 退出系统 *"<<endl;
cout<<"***********************************"<<endl;
while(1)
{
cout<<"选择你所需要的菜单:";
cin>>n;
if(n==3)break;
switch(n)
{
int w;
case 1:
cout<<"选择你所需要输入的职工类型:"<<endl;
cout<<"(1 经理,2 技术人员,3 销售人员):";
cin>>w;
switch(w)
{
case 1:
a.input();break;
case 2:
b.input();break;
case 3:
c.input();break;
};
case 2:
int u;
cout<<"编号:";cin>>u;
switch(u)
{
case 1:
a.show();break;
case 2:
b.show();break;
case 3:
c.show();break;
};
};
};
}
火红枫—领军者ceb
2010-07-20 · 超过14用户采纳过TA的回答
知道答主
回答量:77
采纳率:0%
帮助的人:42.2万
展开全部
哈哈,,,刚好没分啦,,,谢啦100分给我
看完后发现蛮复杂的,,,100分少拉点吧,,,200分就写,,,
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式