c语言编程笔录

首页 > C语言 > c语言

c语言

C语言实现简单职工信息管理系统

更新时间:2023-08-09

前言

职工信息管理系统是一个用于管理和维护职工信息的软件系统。通过该系统,可以方便地添加、查询、修改和删除职工的个人信息,包括姓名、年龄、性别、工号等。本文将使用C语言来实现一个简单的职工信息管理系统,并介绍其设计和代码实现。

设计与实现

首先,我们需要定义一个职工信息的结构体,用于存储每个职工的相关信息。以下是一个示例的结构体定义:

struct Employee {
    char name[50];
    int age;
    char gender;
    int id;
};

然后,我们可以使用数组来存储多个职工的信息。定义一个数组来存储职工信息,可以使用如下代码:

#define MAX_EMPLOYEES 100
struct Employee employees[MAX_EMPLOYEES];
int numEmployees = 0;

在上述代码中,MAX_EMPLOYEES 定义了职工信息数组的最大容量,numEmployees 变量用于记录当前已添加的职工数量。

接下来,我们可以实现相关的功能函数来操作职工信息。

1. 添加职工信息

void addEmployee() {
    if (numEmployees >= MAX_EMPLOYEES) {
        printf("职工信息已满,无法添加新的职工!\n");
        return;
    }
    
    // 获取用户输入的职工信息
    printf("请输入职工姓名:");
    scanf("%s", employees[numEmployees].name);
    printf("请输入职工年龄:");
    scanf("%d", &employees[numEmployees].age);
    printf("请输入职工性别(M或F):");
    scanf(" %c", &employees[numEmployees].gender);
    printf("请输入职工工号:");
    scanf("%d", &employees[numEmployees].id);
    
    numEmployees++;
    printf("成功添加职工信息!\n");
}

2. 查询职工信息

void displayEmployees() {
    if (numEmployees == 0) {
        printf("暂无职工信息!\n");
        return;
    }
    
    printf("职工信息列表:\n");
    for (int i = 0; i < numEmployees; i++) {
        printf("姓名:%s,年龄:%d,性别:%c,工号:%d\n",
                employees[i].name,
                employees[i].age,
                employees[i].gender,
                employees[i].id);
    }
}

3. 修改职工信息

void modifyEmployee() {
    if (numEmployees == 0) {
        printf("暂无职工信息!\n");
        return;
    }
    
    int empId;
    printf("请输入要修改的职工工号:");
    scanf("%d", &empId);
    
    int found = 0;
    for (int i = 0; i < numEmployees; i++) {
        if (employees[i].id == empId) {
            // 获取用户输入的新职工信息
            printf("请输入新的职工姓名:");
            scanf("%s", employees[i].name);
            printf("请输入新的职工年龄:");
            scanf("%d", &employees[i].age);
            printf("请输入新的职工性别(M或F):");
            scanf(" %c", &employees[i].gender);
            
            found = 1;
            break;
        }
    }
    
    if (found) {
        printf("成功修改职工信息!\n");
    } else {
        printf("未找到对应工号的职工信息!\n");
    }
}

4. 删除职工信息

void deleteEmployee() {
    if (numEmployees == 0) {
        printf("暂无职工信息!\n");
        return;
    }
    
    int empId;
    printf("请输入要删除的职工工号:");
    scanf("%d", &empId);
    
    int found = 0;
    for (int i = 0; i < numEmployees; i++) {
        if (employees[i].id == empId) {
            // 删除职工信息,将后面的职工信息前移
            for (int j = i; j < numEmployees - 1; j++) {
                employees[j] = employees[j + 1];
            }
            
            numEmployees--;
            found = 1;
            break;
        }
    }
    
    if (found) {
        printf("成功删除职工信息!\n");
    } else {
        printf("未找到对应工号的职工信息!\n");
    }
}

总结

以上就是一个简单的职工信息管理系统的C语言实现。通过定义结构体存储职工信息,使用数组来存储多个职工的信息,并实现添加、查询、修改和删除职工信息的功能函数,我们可以方便地管理职工信息。