删除职工信息c++
时间: 2024-02-24 15:59:16 浏览: 22
在 C++ 中,你可以删除职工信息的一种常见方法是使用动态数组和指针。以下是一个示例代码:
```c++
#include <iostream>
using namespace std;
struct Employee {
int id;
string name;
int age;
};
int main() {
// 创建动态数组来存储职工信息
int numEmployees = 3;
Employee* employees = new Employee[numEmployees];
// 初始化职工信息
employees[0].id = 1;
employees[0].name = "John";
employees[0].age = 30;
employees[1].id = 2;
employees[1].name = "Mary";
employees[1].age = 25;
employees[2].id = 3;
employees[2].name = "Tom";
employees[2].age = 35;
// 删除职工信息
int idToDelete = 2;
int indexToDelete = -1;
for (int i = 0; i < numEmployees; i++) {
if (employees[i].id == idToDelete) {
indexToDelete = i;
break;
}
}
if (indexToDelete == -1) {
cout << "Employee with id " << idToDelete << " not found." << endl;
} else {
// 将要删除的职工信息后面的所有信息向前移动一个位置
for (int i = indexToDelete; i < numEmployees - 1; i++) {
employees[i] = employees[i + 1];
}
numEmployees--;
cout << "Employee with id " << idToDelete << " deleted." << endl;
}
// 打印剩余的职工信息
for (int i = 0; i < numEmployees; i++) {
cout << "id: " << employees[i].id << ", name: " << employees[i].name << ", age: " << employees[i].age << endl;
}
// 释放动态数组内存
delete[] employees;
return 0;
}
```
这个示例代码首先创建了一个动态数组来存储职工信息,然后初始化了一些职工信息。接下来,它查找要删除的职工信息的索引,并将该索引后面的所有职工信息向前移动一个位置来删除该职工信息。最后,它打印剩余的职工信息,并释放动态数组内存。