教师信息管理系统是一个用于管理教师信息的系统,它需要实现以下功能:
1. 添加教师信息:能够输入教师的基本信息,如姓名、性别、年龄、职称、学历等。
2. 修改教师信息:能够对已有的教师信息进行修改。
3. 删除教师信息:能够删除系统中的某个教师信息。
4. 查询教师信息:能够根据条件查询系统中的教师信息。
5. 显示所有教师信息:能够显示系统中所有的教师信息。
下面是一个简单的C语言编程示例,实现了教师信息管理系统的基本功能:
```c
#include
#include
typedef struct {
char name[20];
char gender;
int age;
char title[20];
char education[50];
} Teacher;
void add_teacher(Teacher *teachers, char *name, char gender, int age, char title[], char education[]);
void modify_teacher(Teacher *teachers, int index, char *old_name, char *new_name, char *old_gender, char *new_gender, int old_age, char *new_title, char *new_education);
void delete_teacher(Teacher *teachers, int index);
void query_teacher(Teacher *teachers, char *keyword);
void display_teachers(Teacher *teachers);
int main() {
Teacher teachers[100];
add_teacher(teachers, "张三", 'M', 25, "教授", "清华大学");
add_teacher(teachers, "李四", 'F', 30, "副教授", "北京大学");
display_teachers(teachers);
return 0;
}
void add_teacher(Teacher *teachers, char *name, char gender, int age, char title[], char education[]) {
strcpy(teachers[0].name, name);
teachers[0].gender = gender;
teachers[0].age = age;
strcpy(teachers[0].title, title);
strcpy(teachers[0].education, education);
}
void modify_teacher(Teacher *teachers, int index, char *old_name, char *new_name, char *old_gender, char *new_gender, int old_age, char *new_title, char *new_education) {
if (index < 0 || index >= sizeof(teachers)) {
printf("索引超出范围!
");
return;
}
strcpy(teachers[index].name, new_name);
teachers[index].gender = new_gender;
teachers[index].age = old_age;
strcpy(teachers[index].title, new_title);
strcpy(teachers[index].education, new_education);
}
void delete_teacher(Teacher *teachers, int index) {
if (index < 0 || index >= sizeof(teachers)) {
printf("索引超出范围!
");
return;
}
- for (int i = index; i < sizeof(teachers)
- 1; i++) {
teachers[i] = teachers[i + 1];
}
sizeof(teachers)--;
}
void query_teacher(Teacher *teachers, char *keyword) {
- for (int i = 0; i < sizeof(teachers)
- 1; i++) {
if (strcmp(teachers[i].name, keyword) == 0) {
printf("找到教师:%s,性别:%c,年龄:%d,职称:%s,学历:%s
", teachers[i].name, teachers[i].gender, teachers[i].age, teachers[i].title, teachers[i].education);
return;
}
}
printf("未找到教师:%s,性别:%c,年龄:%d,职称:%s,学历:%s
", keyword, teachers[i].gender, teachers[i].age, teachers[i].title, teachers[i].education);
}
void display_teachers(Teacher *teachers) {
- for (int i = 0; i < sizeof(teachers)
- 1; i++) {
printf("教师编号:%d,姓名:%s,性别:%c,年龄:%d,职称:%s,学历:%s
", i + 1, teachers[i].name, teachers[i].gender, teachers[i].age, teachers[i].title, teachers[i].education);
}
}
```
这个示例中,我们定义了一个`Teacher`结构体来存储教师的信息,然后实现了`add_teacher`、`modify_teacher`、`delete_teacher`、`query_teacher`和`display_teachers`函数来实现教师信息管理系统的基本功能。在`main`函数中,我们创建了一个`Teacher`数组来存储教师信息,并调用这些函数来演示如何添加、修改、删除和查询教师信息。