假设有如下的关于职工信息的结构体,其中eid表示职工编号,请编写一个函数
时间: 2023-09-29 07:01:20 浏览: 125
定义一个结构体类型Employee,包含一个成员变量eid表示职工编号。然后编写一个函数,该函数接收一个Employee类型的结构体数组和一个整数n作为参数,返回找到的第一个职工编号等于n的职工在数组中的索引,如果找不到则返回-1。
函数的实现如下所示:
```c
#include <stdio.h>
typedef struct {
int eid;
} Employee;
int findEmployee(Employee employees[], int n, int size) {
for (int i = 0; i < size; i++) {
if (employees[i].eid == n) {
return i;
}
}
return -1;
}
int main() {
// 初始化职工信息
Employee employees[5] = {{1001}, {1002}, {1003}, {1004}, {1005}};
// 调用函数查找职工编号为1003的职工
int index = findEmployee(employees, 1003, 5);
// 输出结果
if (index != -1) {
printf("找到职工编号为1003的职工,其在数组中的索引为%d\n", index);
} else {
printf("未找到职工编号为1003的职工\n");
}
return 0;
}
```
该程序运行结果为"找到职工编号为1003的职工,其在数组中的索引为2",说明函数能够正确返回职工编号为1003的职工在数组中的索引位置。如果想要查找其他职工编号,可以修改函数调用中的参数。
阅读全文