3.职工信息管理系统(限最多2人完成) 要求:设计一个职工信息管理系统,职工信息包括职工号,姓名,性别,年龄,学历,工资,住址,电 话等(职工号不重复),并具有以下功能: (1)系统以菜单方式工作 (2)职工信息录入功能(职工信息用文件保存) (3)职工信息浏览功能 (4)查询和排序功能:按工资查询、按学历查询 (5)职工信息删除,修改功能
时间: 2023-08-01 12:11:29 浏览: 78
实现某部门职工信息管理。职工信息包括:职工号、姓名、性别、年龄、学历、基本工资、岗位津贴、住址、电话等(职工号不重复)。
4星 · 用户满意度95%
这个系统可以用Python语言来实现。我将分步骤介绍如何实现这个系统。
1. 定义职工信息类
首先,我们需要定义一个职工信息类,包括职工号、姓名、性别、年龄、学历、工资、住址和电话等属性。代码如下:
```python
class Employee:
def __init__(self, emp_no, name, gender, age, education, salary, address, phone):
self.emp_no = emp_no
self.name = name
self.gender = gender
self.age = age
self.education = education
self.salary = salary
self.address = address
self.phone = phone
```
2. 编写主程序
接下来,我们需要编写主程序。主程序应该包括以下功能:
- 菜单界面显示
- 职工信息录入功能
- 职工信息浏览功能
- 查询和排序功能
- 职工信息删除、修改功能
代码如下:
```python
import os
# 定义职工信息类
class Employee:
def __init__(self, emp_no, name, gender, age, education, salary, address, phone):
self.emp_no = emp_no
self.name = name
self.gender = gender
self.age = age
self.education = education
self.salary = salary
self.address = address
self.phone = phone
# 职工信息录入功能
def add_employee():
emp_no = input("请输入职工号:")
name = input("请输入姓名:")
gender = input("请输入性别:")
age = input("请输入年龄:")
education = input("请输入学历:")
salary = input("请输入工资:")
address = input("请输入住址:")
phone = input("请输入电话:")
# 将新职工信息写入文件
with open("employees.txt", "a") as f:
f.write(f"{emp_no},{name},{gender},{age},{education},{salary},{address},{phone}\n")
print("职工信息录入成功!")
# 职工信息浏览功能
def view_employee():
print("职工信息如下:")
print("职工号\t姓名\t性别\t年龄\t学历\t工资\t住址\t电话")
with open("employees.txt", "r") as f:
lines = f.readlines()
for line in lines:
emp_info = line.strip().split(",")
print(f"{emp_info[0]}\t{emp_info[1]}\t{emp_info[2]}\t{emp_info[3]}\t{emp_info[4]}\t{emp_info[5]}\t{emp_info[6]}\t{emp_info[7]}")
# 按工资查询
def search_by_salary():
salary = input("请输入工资:")
print("查询结果如下:")
print("职工号\t姓名\t性别\t年龄\t学历\t工资\t住址\t电话")
with open("employees.txt", "r") as f:
lines = f.readlines()
for line in lines:
emp_info = line.strip().split(",")
if emp_info[5] == salary:
print(f"{emp_info[0]}\t{emp_info[1]}\t{emp_info[2]}\t{emp_info[3]}\t{emp_info[4]}\t{emp_info[5]}\t{emp_info[6]}\t{emp_info[7]}")
# 按学历查询
def search_by_education():
education = input("请输入学历:")
print("查询结果如下:")
print("职工号\t姓名\t性别\t年龄\t学历\t工资\t住址\t电话")
with open("employees.txt", "r") as f:
lines = f.readlines()
for line in lines:
emp_info = line.strip().split(",")
if emp_info[4] == education:
print(f"{emp_info[0]}\t{emp_info[1]}\t{emp_info[2]}\t{emp_info[3]}\t{emp_info[4]}\t{emp_info[5]}\t{emp_info[6]}\t{emp_info[7]}")
# 职工信息删除功能
def delete_employee():
emp_no = input("请输入要删除的职工号:")
lines = []
with open("employees.txt", "r") as f:
lines = f.readlines()
with open("employees.txt", "w") as f:
for line in lines:
emp_info = line.strip().split(",")
if emp_info[0] != emp_no:
f.write(line)
print("职工信息删除成功!")
# 职工信息修改功能
def modify_employee():
emp_no = input("请输入要修改的职工号:")
lines = []
with open("employees.txt", "r") as f:
lines = f.readlines()
with open("employees.txt", "w") as f:
for line in lines:
emp_info = line.strip().split(",")
if emp_info[0] == emp_no:
name = input(f"请输入修改后的姓名(原值:{emp_info[1]}):")
gender = input(f"请输入修改后的性别(原值:{emp_info[2]}):")
age = input(f"请输入修改后的年龄(原值:{emp_info[3]}):")
education = input(f"请输入修改后的学历(原值:{emp_info[4]}):")
salary = input(f"请输入修改后的工资(原值:{emp_info[5]}):")
address = input(f"请输入修改后的住址(原值:{emp_info[6]}):")
phone = input(f"请输入修改后的电话(原值:{emp_info[7]}):")
f.write(f"{emp_no},{name},{gender},{age},{education},{salary},{address},{phone}\n")
print("职工信息修改成功!")
else:
f.write(line)
# 菜单界面显示
while True:
os.system("cls")
print("="*30)
print("职工信息管理系统")
print("="*30)
print("1. 职工信息录入")
print("2. 职工信息浏览")
print("3. 按工资查询")
print("4. 按学历查询")
print("5. 职工信息删除")
print("6. 职工信息修改")
print("0. 退出系统")
print("="*30)
choice = input("请输入功能序号:")
if choice == "1":
add_employee()
elif choice == "2":
view_employee()
input("按任意键继续...")
elif choice == "3":
search_by_salary()
input("按任意键继续...")
elif choice == "4":
search_by_education()
input("按任意键继续...")
elif choice == "5":
delete_employee()
input("按任意键继续...")
elif choice == "6":
modify_employee()
input("按任意键继续...")
elif choice == "0":
break
```
3. 测试程序
最后,我们需要测试程序是否能够正常运行。在测试之前,我们需要创建一个空的文本文件employees.txt,用于保存职工信息。
运行程序后,按照菜单提示进行操作即可。可以通过菜单界面进行职工信息录入、浏览、查询、删除和修改等操作。
这就是一个简单的职工信息管理系统的实现方法。
阅读全文