综合实验c语言员工管理系统

时间: 2023-10-20 15:07:45 浏览: 39
好的,员工管理系统是一个常见的实战项目,下面给出一个简单的综合实验c语言员工管理系统的示例。 该员工管理系统主要包括以下功能: 1. 添加员工信息 2. 删除员工信息 3. 修改员工信息 4. 查询员工信息 5. 显示所有员工信息 6. 退出程序 在开始编写程序前,需要确定员工信息的数据结构。在本示例中,我们使用一个结构体来存储员工的信息,包括员工编号、姓名、性别、年龄、职位、工资等信息。 定义员工信息结构体如下: ``` struct Employee { int id; char name[20]; char sex[5]; int age; char position[20]; float salary; }; ``` 接下来,我们可以定义一个数组来存储所有员工的信息,示例中假设最多可以存储100个员工的信息,因此定义数组大小为100。 ``` struct Employee employees[100]; ``` 接着,我们可以编写各个功能的代码。下面分别介绍每个功能的实现方法。 1. 添加员工信息 添加员工信息需要用户输入员工的各项信息,然后将其存储到数组中。示例代码如下: ``` void addEmployee() { int id; char name[20]; char sex[5]; int age; char position[20]; float salary; printf("请输入员工编号:"); scanf("%d", &id); // 判断员工编号是否已存在 for (int i = 0; i < 100; i++) { if (employees[i].id == id) { printf("员工编号已存在,请重新输入!\n"); return; } } printf("请输入员工姓名:"); scanf("%s", name); printf("请输入员工性别:"); scanf("%s", sex); printf("请输入员工年龄:"); scanf("%d", &age); printf("请输入员工职位:"); scanf("%s", position); printf("请输入员工工资:"); scanf("%f", &salary); // 将员工信息存储到数组中 for (int i = 0; i < 100; i++) { if (employees[i].id == 0) { employees[i].id = id; strcpy(employees[i].name, name); strcpy(employees[i].sex, sex); employees[i].age = age; strcpy(employees[i].position, position); employees[i].salary = salary; printf("添加成功!\n"); return; } } printf("员工信息已达上限,无法添加!\n"); } ``` 2. 删除员工信息 删除员工信息需要用户输入要删除的员工编号,然后将该员工信息从数组中删除。示例代码如下: ``` void deleteEmployee() { int id; printf("请输入要删除的员工编号:"); scanf("%d", &id); // 查找要删除的员工信息 for (int i = 0; i < 100; i++) { if (employees[i].id == id) { // 将该员工信息从数组中删除 employees[i].id = 0; strcpy(employees[i].name, ""); strcpy(employees[i].sex, ""); employees[i].age = 0; strcpy(employees[i].position, ""); employees[i].salary = 0.0; printf("删除成功!\n"); return; } } printf("该员工不存在!\n"); } ``` 3. 修改员工信息 修改员工信息需要用户输入要修改的员工编号,然后修改该员工的各项信息。示例代码如下: ``` void modifyEmployee() { int id; printf("请输入要修改的员工编号:"); scanf("%d", &id); // 查找要修改的员工信息 for (int i = 0; i < 100; i++) { if (employees[i].id == id) { char name[20]; char sex[5]; int age; char position[20]; float salary; printf("请输入员工姓名:"); scanf("%s", name); strcpy(employees[i].name, name); printf("请输入员工性别:"); scanf("%s", sex); strcpy(employees[i].sex, sex); printf("请输入员工年龄:"); scanf("%d", &age); employees[i].age = age; printf("请输入员工职位:"); scanf("%s", position); strcpy(employees[i].position, position); printf("请输入员工工资:"); scanf("%f", &salary); employees[i].salary = salary; printf("修改成功!\n"); return; } } printf("该员工不存在!\n"); } ``` 4. 查询员工信息 查询员工信息需要用户输入要查询的员工编号,然后输出该员工的各项信息。示例代码如下: ``` void queryEmployee() { int id; printf("请输入要查询的员工编号:"); scanf("%d", &id); // 查找要查询的员工信息 for (int i = 0; i < 100; i++) { if (employees[i].id == id) { printf("员工编号:%d\n", employees[i].id); printf("员工姓名:%s\n", employees[i].name); printf("员工性别:%s\n", employees[i].sex); printf("员工年龄:%d\n", employees[i].age); printf("员工职位:%s\n", employees[i].position); printf("员工工资:%f\n", employees[i].salary); return; } } printf("该员工不存在!\n"); } ``` 5. 显示所有员工信息 显示所有员工信息需要遍历数组,输出所有员工的各项信息。示例代码如下: ``` void showAllEmployees() { printf("员工编号\t员工姓名\t员工性别\t员工年龄\t员工职位\t员工工资\n"); for (int i = 0; i < 100; i++) { if (employees[i].id != 0) { printf("%d\t\t%s\t\t%s\t\t%d\t\t%s\t\t%f\n", employees[i].id, employees[i].name, employees[i].sex, employees[i].age, employees[i].position, employees[i].salary); } } } ``` 6. 退出程序 退出程序需要使用break语句跳出循环,示例代码如下: ``` void exitProgram() { printf("程序已退出!\n"); exit(0); } ``` 最后,我们需要在主函数中实现一个简单的菜单界面,让用户选择不同的功能。示例代码如下: ``` int main() { while (1) { printf("========员工管理系统========\n"); printf("1、添加员工信息\n"); printf("2、删除员工信息\n"); printf("3、修改员工信息\n"); printf("4、查询员工信息\n"); printf("5、显示所有员工信息\n"); printf("6、退出程序\n"); printf("请输入要执行的操作:"); int choice; scanf("%d", &choice); switch (choice) { case 1: addEmployee(); break; case 2: deleteEmployee(); break; case 3: modifyEmployee(); break; case 4: queryEmployee(); break; case 5: showAllEmployees(); break; case 6: exitProgram(); break; default: printf("输入错误,请重新输入!\n"); break; } } return 0; } ``` 到这里,综合实验c语言员工管理系统的示例已经完成。该程序还可以根据实际需求进行优化和扩展,例如可以添加文件读写功能,将员工信息保存到文件中,以便下次运行程序时直接读取。

相关推荐

最新推荐

recommend-type

C语言实现简单航班管理系统

主要为大家详细介绍了C语言实现简单航班管理系统,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
recommend-type

C语言实现电话簿管理系统

主要为大家详细介绍了C语言实现电话簿管理系统,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
recommend-type

C语言图书管理系统简洁版

主要为大家详细介绍了C语言图书管理系统简洁版,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
recommend-type

C语言实现银行管理系统

主要为大家详细介绍了C语言实现银行管理系统,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
recommend-type

C语言实现餐饮结账管理系统

主要为大家详细介绍了C语言实现餐饮结账管理系统,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
recommend-type

zigbee-cluster-library-specification

最新的zigbee-cluster-library-specification说明文档。
recommend-type

管理建模和仿真的文件

管理Boualem Benatallah引用此版本:布阿利姆·贝纳塔拉。管理建模和仿真。约瑟夫-傅立叶大学-格勒诺布尔第一大学,1996年。法语。NNT:电话:00345357HAL ID:电话:00345357https://theses.hal.science/tel-003453572008年12月9日提交HAL是一个多学科的开放存取档案馆,用于存放和传播科学研究论文,无论它们是否被公开。论文可以来自法国或国外的教学和研究机构,也可以来自公共或私人研究中心。L’archive ouverte pluridisciplinaire
recommend-type

MATLAB取整函数与Web开发的作用:round、fix、floor、ceil在Web开发中的应用

![MATLAB取整函数与Web开发的作用:round、fix、floor、ceil在Web开发中的应用](https://img-blog.csdnimg.cn/2020050917173284.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2thbmdqaWVsZWFybmluZw==,size_16,color_FFFFFF,t_70) # 1. MATLAB取整函数概述** MATLAB取整函数是一组强大的工具,用于对数值进行
recommend-type

我想做python的算法工程师,我应该学什么?学习的顺序是什么?网上有什么推荐的免费课程吗?回答具体精确一点不要太笼统

对于想要成为 Python 算法工程师的人来说,他们应该先从掌握 Python 的基础语法开始,然后学习数据结构和算法,并且要深入了解 Python 中的一些科学计算和数据处理库,比如 NumPy、Pandas 等。 学习的顺序可以是先学习基础语法和编程技巧,然后再学习数据结构和算法相关的知识,最后深入了解数据处理和科学计算相关的库。 对于免费课程的推荐,我建议你可以先去 Coursera、edX、Udacity 等网站上寻找相关课程,这些网站上有很多优质的 Python 编程和算法课程,你可以根据自己的需求和学习进度进行选择。此外,还可以考虑一些在线编程网站,如 HackerRank、L
recommend-type

JSBSim Reference Manual

JSBSim参考手册,其中包含JSBSim简介,JSBSim配置文件xml的编写语法,编程手册以及一些应用实例等。其中有部分内容还没有写完,估计有生之年很难看到完整版了,但是内容还是很有参考价值的。