c++工资管理系统员工排序
时间: 2023-08-03 17:31:58 浏览: 158
员工工资管理系统c++
可以使用C++中的结构体和排序算法来实现员工排序。首先,定义一个结构体来存储员工信息,包括姓名、工号、工资等属性。然后,使用数组来存储所有员工的信息,并根据需要实现不同的排序算法。例如,可以使用快速排序、归并排序或插入排序等算法进行排序。排序时,按照不同的属性进行排序,例如按照工资从高到低排序,或者按照姓名的字母顺序排序等。最后,将排序后的员工信息输出即可。
以下是示例代码:
```c++
#include <iostream>
#include <string>
#include <algorithm>
using namespace std;
struct Employee {
string name;
int id;
double salary;
};
bool compareSalary(Employee e1, Employee e2) {
return e1.salary > e2.salary;
}
bool compareName(Employee e1, Employee e2) {
return e1.name < e2.name;
}
int main() {
const int size = 5;
Employee employees[size];
// 读入员工信息
for (int i = 0; i < size; i++) {
cout << "请输入第" << i + 1 << "个员工的姓名、工号和工资:";
cin >> employees[i].name >> employees[i].id >> employees[i].salary;
}
// 按照工资排序
sort(employees, employees + size, compareSalary);
// 输出排序结果
cout << "按照工资从高到低排序的员工信息:" << endl;
for (int i = 0; i < size; i++) {
cout << employees[i].name << " " << employees[i].id << " " << employees[i].salary << endl;
}
// 按照姓名排序
sort(employees, employees + size, compareName);
// 输出排序结果
cout << "按照姓名的字母顺序排序的员工信息:" << endl;
for (int i = 0; i < size; i++) {
cout << employees[i].name << " " << employees[i].id << " " << employees[i].salary << endl;
}
return 0;
}
```
这个例子中,我们定义了一个`Employee`结构体来存储员工信息。然后,我们定义了两个比较函数`compareSalary`和`compareName`,分别用于按照工资和姓名排序。在`main`函数中,我们读入员工信息,然后按照工资和姓名分别进行排序,并输出排序结果。
阅读全文