设计一个计算机程序,能够实现简单的员工管理功能。员工信息有随机数生成器生成
时间: 2024-02-09 21:11:35 浏览: 189
好的,我可以帮您设计一个员工管理系统的计算机程序。
首先,我们需要定义员工的信息包括姓名、工号、职位、入职日期、工资等。为了方便起见,我们可以使用结构体来存储员工的信息。
接下来,我们需要设计程序的功能。根据您的要求,我们需要实现以下功能:
1. 添加员工信息:程序可以通过随机数生成器生成员工信息,并将其添加到员工信息库中。
2. 删除员工信息:程序可以根据工号或姓名删除指定员工的信息。
3. 修改员工信息:程序可以根据工号或姓名修改指定员工的信息。
4. 查询员工信息:程序可以根据工号或姓名查询指定员工的信息。
5. 显示所有员工信息:程序可以显示当前员工信息库中所有员工的信息。
我们可以使用 C++ 编程语言来实现这个程序,以下是示例代码:
```cpp
#include <iostream>
#include <string>
#include <ctime>
using namespace std;
struct Employee {
string name;
string id;
string position;
string date;
double salary;
};
// 添加员工信息
void addEmployee(Employee employees[], int& count) {
// 生成随机数
srand((unsigned)time(nullptr));
employees[count].name = "Employee " + to_string(count+1);
employees[count].id = to_string(rand()%10000+1000);
employees[count].position = "Position " + to_string(rand()%5+1);
employees[count].date = "2021/" + to_string(rand()%12+1) + "/" + to_string(rand()%28+1);
employees[count].salary = rand()%5000+2000;
count++;
cout << "员工信息添加成功!" << endl;
}
// 删除员工信息
void deleteEmployee(Employee employees[], int& count) {
string nameOrId;
cout << "请输入要删除的员工姓名或工号:";
cin >> nameOrId;
bool flag = false;
for (int i = 0; i < count; i++) {
if (employees[i].name == nameOrId || employees[i].id == nameOrId) {
for (int j = i; j < count-1; j++) {
employees[j] = employees[j+1];
}
count--;
flag = true;
cout << "员工信息删除成功!" << endl;
break;
}
}
if (!flag) {
cout << "未找到对应员工信息!" << endl;
}
}
// 修改员工信息
void modifyEmployee(Employee employees[], int count) {
string nameOrId;
cout << "请输入要修改的员工姓名或工号:";
cin >> nameOrId;
bool flag = false;
for (int i = 0; i < count; i++) {
if (employees[i].name == nameOrId || employees[i].id == nameOrId) {
cout << "请输入员工姓名:";
cin >> employees[i].name;
cout << "请输入员工工号:";
cin >> employees[i].id;
cout << "请输入员工职位:";
cin >> employees[i].position;
cout << "请输入员工入职日期(yyyy/mm/dd):";
cin >> employees[i].date;
cout << "请输入员工工资:";
cin >> employees[i].salary;
flag = true;
cout << "员工信息修改成功!" << endl;
break;
}
}
if (!flag) {
cout << "未找到对应员工信息!" << endl;
}
}
// 查询员工信息
void queryEmployee(Employee employees[], int count) {
string nameOrId;
cout << "请输入要查询的员工姓名或工号:";
cin >> nameOrId;
bool flag = false;
for (int i = 0; i < count; i++) {
if (employees[i].name == nameOrId || employees[i].id == nameOrId) {
cout << "姓名:" << employees[i].name << endl;
cout << "工号:" << employees[i].id << endl;
cout << "职位:" << employees[i].position << endl;
cout << "入职日期:" << employees[i].date << endl;
cout << "工资:" << employees[i].salary << endl;
flag = true;
break;
}
}
if (!flag) {
cout << "未找到对应员工信息!" << endl;
}
}
// 显示所有员工信息
void displayEmployees(Employee employees[], int count) {
for (int i = 0; i < count; i++) {
cout << "姓名:" << employees[i].name << endl;
cout << "工号:" << employees[i].id << endl;
cout << "职位:" << employees[i].position << endl;
cout << "入职日期:" << employees[i].date << endl;
cout << "工资:" << employees[i].salary << endl << endl;
}
}
int main() {
int choice;
int count = 0;
Employee employees[100];
while (true) {
cout << "请选择要进行的操作:" << endl;
cout << "1. 添加员工信息" << endl;
cout << "2. 删除员工信息" << endl;
cout << "3. 修改员工信息" << endl;
cout << "4. 查询员工信息" << endl;
cout << "5. 显示所有员工信息" << endl;
cout << "6. 退出程序" << endl;
cin >> choice;
switch (choice) {
case 1:
addEmployee(employees, count);
break;
case 2:
deleteEmployee(employees, count);
break;
case 3:
modifyEmployee(employees, count);
break;
case 4:
queryEmployee(employees, count);
break;
case 5:
displayEmployees(employees, count);
break;
case 6:
return 0;
default:
cout << "无效操作!" << endl;
break;
}
}
return 0;
}
```
这个程序可以实现您所需要的员工管理功能,您可以根据实际需求进行修改和完善。
阅读全文