c语言生成一个有关教师工作量管理的系统
时间: 2024-01-17 15:05:06 浏览: 23
好的,下面是一个简单的教师工作量管理系统的C语言代码,它可以实现添加教师、添加课程、查询教师工作量等基本功能。请注意,这只是一个简单的示例代码,你需要根据具体的需求进行修改和完善。
```
#include <stdio.h>
#include <string.h>
#define MAX_TEACHERS 100
#define MAX_COURSES 100
typedef struct {
char name[50];
int course_count;
char courses[MAX_COURSES][50];
} Teacher;
Teacher teachers[MAX_TEACHERS];
int teacher_count = 0;
void add_teacher() {
Teacher teacher;
printf("Enter teacher name: ");
scanf("%s", teacher.name);
printf("Enter number of courses: ");
scanf("%d", &teacher.course_count);
printf("Enter course names:\n");
for (int i=0; i<teacher.course_count; i++) {
scanf("%s", teacher.courses[i]);
}
teachers[teacher_count++] = teacher;
printf("Teacher added successfully.\n");
}
void add_course() {
char teacher_name[50], course_name[50];
printf("Enter teacher name: ");
scanf("%s", teacher_name);
printf("Enter course name: ");
scanf("%s", course_name);
for (int i=0; i<teacher_count; i++) {
if (strcmp(teachers[i].name, teacher_name) == 0) {
strcpy(teachers[i].courses[teachers[i].course_count++], course_name);
printf("Course added successfully.\n");
return;
}
}
printf("Teacher not found.\n");
}
void query_teacher_workload() {
char teacher_name[50];
printf("Enter teacher name: ");
scanf("%s", teacher_name);
for (int i=0; i<teacher_count; i++) {
if (strcmp(teachers[i].name, teacher_name) == 0) {
printf("Teacher %s has %d courses.\n", teacher_name, teachers[i].course_count);
return;
}
}
printf("Teacher not found.\n");
}
int main() {
int choice;
while (1) {
printf("\n1. Add teacher\n2. Add course\n3. Query teacher workload\n4. Exit\n");
printf("Enter your choice: ");
scanf("%d", &choice);
switch (choice) {
case 1:
add_teacher();
break;
case 2:
add_course();
break;
case 3:
query_teacher_workload();
break;
case 4:
printf("Exiting...\n");
return 0;
default:
printf("Invalid choice.\n");
}
}
}
```
在上面的代码中,我们使用了结构体来存储教师信息,包括姓名和所教授的课程。我们还定义了一个全局的教师数组`teachers`,用于存储所有的教师信息。在主函数中,我们使用一个无限循环来读取用户输入的选项,并根据选项调用不同的函数来实现不同的功能,包括添加教师、添加课程和查询教师工作量。