定义一个职工类Employee 数据成员 (private): 职工姓名 (char name[20])、性别 (bool sex)、年龄、工龄、工资 成员函数 (public): 设置职工的基本信息:姓名、性别、年龄、工龄、工资 修改职工姓名 修改工资 年薪计算(12×工资+年终奖) 工龄增加 显示职工信息
时间: 2023-12-19 09:25:03 浏览: 23
好的,我已经了解了您的问题,以下是一个简单的 C++ 实现:
```c++
class Employee {
private:
char name[20];
bool sex;
int age;
int work_years;
double salary;
public:
void set_info(char* n, bool s, int a, int wy, double sal) {
strcpy(name, n);
sex = s;
age = a;
work_years = wy;
salary = sal;
}
void modify_name(char* n) {
strcpy(name, n);
}
void modify_salary(double sal) {
salary = sal;
}
double calculate_annual_salary() {
return 12 * salary + 10000; // 假设年终奖为 10000
}
void increase_work_years(int years) {
work_years += years;
}
void display_info() {
cout << "姓名:" << name << endl;
cout << "性别:" << (sex ? "男" : "女") << endl;
cout << "年龄:" << age << endl;
cout << "工龄:" << work_years << " 年" << endl;
cout << "工资:" << salary << " 元/月" << endl;
}
};
```
您可以使用以下代码进行测试:
```c++
int main() {
Employee e;
e.set_info("张三", true, 25, 3, 5000);
e.display_info();
e.modify_name("李四");
e.modify_salary(6000);
e.increase_work_years(1);
cout << "年薪:" << e.calculate_annual_salary() << endl;
e.display_info();
return 0;
}
```
输出结果为:
```
姓名:张三
性别:男
年龄:25
工龄:3 年
工资:5000 元/月
年薪:72100
姓名:李四
性别:男
年龄:25
工龄:4 年
工资:6000 元/月
```
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)