C语言教师信息管理系统模板
时间: 2023-05-30 13:06:08 浏览: 75
以下是一个简单的C语言教师信息管理系统模板,包括基本的增删改查功能。
```
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAX_TEACHERS 100 // 最大教师数
struct Teacher {
char name[20];
int age;
char gender[10];
char subject[20];
};
struct Teacher teachers[MAX_TEACHERS]; // 教师数组
int numTeachers = 0; // 当前教师数
void printMenu() {
printf("\n");
printf("********** 教师信息管理系统 **********\n");
printf("1. 添加教师信息\n");
printf("2. 显示所有教师信息\n");
printf("3. 查找教师信息\n");
printf("4. 修改教师信息\n");
printf("5. 删除教师信息\n");
printf("0. 退出系统\n");
printf("请选择操作:");
}
void addTeacher() {
if (numTeachers == MAX_TEACHERS) {
printf("教师信息已满,无法添加!\n");
return;
}
struct Teacher newTeacher;
printf("请输入教师姓名:");
scanf("%s", newTeacher.name);
printf("请输入教师年龄:");
scanf("%d", &newTeacher.age);
printf("请输入教师性别:");
scanf("%s", newTeacher.gender);
printf("请输入教师所教学科:");
scanf("%s", newTeacher.subject);
teachers[numTeachers] = newTeacher;
numTeachers++;
printf("教师信息添加成功!\n");
}
void showTeachers() {
if (numTeachers == 0) {
printf("无教师信息!\n");
return;
}
printf("教师姓名\t教师年龄\t教师性别\t所教学科\n");
for (int i = 0; i < numTeachers; i++) {
printf("%s\t\t%d\t\t%s\t\t%s\n", teachers[i].name, teachers[i].age, teachers[i].gender, teachers[i].subject);
}
}
void findTeacher() {
char name[20];
printf("请输入要查找的教师姓名:");
scanf("%s", name);
for (int i = 0; i < numTeachers; i++) {
if (strcmp(name, teachers[i].name) == 0) {
printf("教师姓名\t教师年龄\t教师性别\t所教学科\n");
printf("%s\t\t%d\t\t%s\t\t%s\n", teachers[i].name, teachers[i].age, teachers[i].gender, teachers[i].subject);
return;
}
}
printf("未找到该教师信息!\n");
}
void modifyTeacher() {
char name[20];
printf("请输入要修改的教师姓名:");
scanf("%s", name);
for (int i = 0; i < numTeachers; i++) {
if (strcmp(name, teachers[i].name) == 0) {
printf("请输入教师姓名:");
scanf("%s", teachers[i].name);
printf("请输入教师年龄:");
scanf("%d", &teachers[i].age);
printf("请输入教师性别:");
scanf("%s", teachers[i].gender);
printf("请输入教师所教学科:");
scanf("%s", teachers[i].subject);
printf("教师信息修改成功!\n");
return;
}
}
printf("未找到该教师信息!\n");
}
void deleteTeacher() {
char name[20];
printf("请输入要删除的教师姓名:");
scanf("%s", name);
for (int i = 0; i < numTeachers; i++) {
if (strcmp(name, teachers[i].name) == 0) {
for (int j = i; j < numTeachers - 1; j++) {
teachers[j] = teachers[j + 1];
}
numTeachers--;
printf("教师信息删除成功!\n");
return;
}
}
printf("未找到该教师信息!\n");
}
int main() {
int choice;
do {
printMenu();
scanf("%d", &choice);
switch (choice) {
case 1:
addTeacher();
break;
case 2:
showTeachers();
break;
case 3:
findTeacher();
break;
case 4:
modifyTeacher();
break;
case 5:
deleteTeacher();
break;
case 0:
printf("退出系统!\n");
break;
default:
printf("无效操作!\n");
break;
}
} while (choice != 0);
return 0;
}
```