c语言员工管理系统
时间: 2023-07-03 22:07:31 浏览: 63
好的,员工管理系统可以包含以下功能:
1. 添加员工信息:包括姓名、工号、入职时间、工资等基本信息;
2. 修改员工信息:对已有员工信息进行修改;
3. 删除员工信息:删除已有员工信息;
4. 查询员工信息:通过员工姓名或者工号查询员工信息;
5. 统计员工信息:统计公司员工数量、平均工资等信息。
以下是一个简单的员工管理系统的 C 语言代码示例:
```c
#include <stdio.h>
#include <string.h>
#define MAX_EMPLOYEE 100 // 最大员工数
struct Employee {
char name[20]; // 姓名
int number; // 工号
char entryDate[20]; // 入职时间
float salary; // 工资
};
struct Employee employees[MAX_EMPLOYEE]; // 员工数组
int employeeCount = 0; // 员工数量
// 添加员工信息
void addEmployee() {
if (employeeCount >= MAX_EMPLOYEE) {
printf("员工数量已达上限,无法添加新员工\n");
return;
}
struct Employee newEmployee;
printf("请输入员工姓名:");
scanf("%s", newEmployee.name);
printf("请输入员工工号:");
scanf("%d", &newEmployee.number);
printf("请输入员工入职时间:");
scanf("%s", newEmployee.entryDate);
printf("请输入员工工资:");
scanf("%f", &newEmployee.salary);
employees[employeeCount] = newEmployee;
employeeCount++;
printf("员工信息添加成功!\n");
}
// 修改员工信息
void modifyEmployee() {
int number;
printf("请输入要修改的员工工号:");
scanf("%d", &number);
for (int i = 0; i < employeeCount; i++) {
if (employees[i].number == number) {
printf("请输入新的员工姓名:");
scanf("%s", employees[i].name);
printf("请输入新的员工入职时间:");
scanf("%s", employees[i].entryDate);
printf("请输入新的员工工资:");
scanf("%f", &employees[i].salary);
printf("员工信息修改成功!\n");
return;
}
}
printf("未找到该员工,请检查输入是否正确\n");
}
// 删除员工信息
void deleteEmployee() {
int number;
printf("请输入要删除的员工工号:");
scanf("%d", &number);
for (int i = 0; i < employeeCount; i++) {
if (employees[i].number == number) {
for (int j = i; j < employeeCount - 1; j++) {
employees[j] = employees[j + 1];
}
employeeCount--;
printf("员工信息删除成功!\n");
return;
}
}
printf("未找到该员工,请检查输入是否正确\n");
}
// 查询员工信息
void searchEmployee() {
char keyword[20];
printf("请输入要查询的员工姓名或工号:");
scanf("%s", keyword);
for (int i = 0; i < employeeCount; i++) {
if (strcmp(employees[i].name, keyword) == 0 || employees[i].number == atoi(keyword)) {
printf("姓名:%s\t工号:%d\t入职时间:%s\t工资:%.2f\n",
employees[i].name, employees[i].number, employees[i].entryDate, employees[i].salary);
}
}
}
// 统计员工信息
void statisticEmployee() {
float totalSalary = 0;
for (int i = 0; i < employeeCount; i++) {
totalSalary += employees[i].salary;
}
printf("公司当前员工数量为:%d,平均工资为:%.2f\n", employeeCount, totalSalary / employeeCount);
}
int main() {
int choice;
while (1) {
printf("请选择要执行的操作:\n");
printf("1. 添加员工信息\n");
printf("2. 修改员工信息\n");
printf("3. 删除员工信息\n");
printf("4. 查询员工信息\n");
printf("5. 统计员工信息\n");
printf("6. 退出\n");
scanf("%d", &choice);
switch (choice) {
case 1:
addEmployee();
break;
case 2:
modifyEmployee();
break;
case 3:
deleteEmployee();
break;
case 4:
searchEmployee();
break;
case 5:
statisticEmployee();
break;
case 6:
printf("程序已退出\n");
return 0;
default:
printf("无效的操作,请重新选择\n");
}
}
}
```
以上是一个基本的员工管理系统的代码示例,你可以在此基础上进行功能扩展和优化。
阅读全文