教务管理员:用户名、密码、权限、终止日期↵ 学生:学号、姓名、性别、班级、系别、专业↵ 教师:职工号、姓名、性别、出生年月、职务、部门↵ 课程:课程号、课程名、课程性质、学分 ↵ 成绩:学号、课程号、学期代码、任课教师、平时成绩、期末成绩、总评成绩、补考成绩、重修成绩↵的类图
时间: 2023-10-06 12:08:38 浏览: 29
抱歉,我是一名语言模型,无法显示图片或绘制类图。但我可以给你描述一下这个类图的结构:
该类图包括教务管理员、学生、教师、课程和成绩这五个类,它们之间的关系如下:
- 教务管理员类包含用户名、密码、权限和终止日期等属性,用于管理学生、教师、课程和成绩等信息;
- 学生类包含学号、姓名、性别、班级、系别和专业等属性,用于记录学生的个人信息;
- 教师类包含职工号、姓名、性别、出生年月、职务和部门等属性,用于记录教师的个人信息;
- 课程类包含课程号、课程名、课程性质和学分等属性,用于记录课程的基本信息;
- 成绩类包含学号、课程号、学期代码、任课教师、平时成绩、期末成绩、总评成绩、补考成绩和重修成绩等属性,用于记录学生在某个课程中的成绩情况。
在这个类图中,学生、教师和课程类与成绩类之间存在关联关系,表示学生、教师和课程对应的成绩信息;教师类与课程类之间也存在关联关系,表示教师对应的授课信息。
相关问题
学生选课系统建模中参与者:学生、教师、教务处管理员和课程管理员的用例分别有哪些?
学生选课系统建模中,参与者的用例如下:
1. 学生:
- 查看可选课程列表
- 选择课程
- 查看已选课程
- 修改已选课程
- 退选已选课程
- 查看课程成绩
2. 教师:
- 查看教授课程列表
- 查看选课学生名单
- 录入学生成绩
3. 教务处管理员:
- 添加新课程
- 修改课程信息
- 删除课程
- 查看选课情况统计报表
4. 课程管理员:
- 确认课程开设情况
- 查看课程选课情况
- 调整课程容量
- 处理课程冲突申请
C语言解答,教务管理系统 设计一个教务管理系统,包括:学生信息(学生的基本信息:姓名,学号,性别) 学生入学时间,毕业时间,学生在籍状态,毕业情况(包括:实习情况) 功能:实现后台登录,信息的增删改查
好的,以下是用C语言实现教务管理系统的基本代码:
```
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
// 定义学生结构体
struct Student {
char name[20];
char id[20];
char gender[10];
char entrance_time[20];
char graduate_time[20];
char status[20];
char practice[50];
};
// 定义学生信息数组,最多可以存放100个学生信息
struct Student students[100];
// 定义全局变量,用于记录当前学生数量
int num_of_students = 0;
// 后台登录函数,返回值为1表示登录成功,为0表示登录失败
int login() {
char username[20] = "admin";
char password[20] = "123456";
char input_username[20];
char input_password[20];
printf("请输入用户名:");
scanf("%s", input_username);
printf("请输入密码:");
scanf("%s", input_password);
if (strcmp(username, input_username) == 0 && strcmp(password, input_password) == 0) {
printf("登录成功!\n");
return 1;
} else {
printf("用户名或密码错误,请重新输入!\n");
return 0;
}
}
// 增加学生信息函数
void add_student() {
struct Student student;
printf("请输入学生姓名:");
scanf("%s", student.name);
printf("请输入学生学号:");
scanf("%s", student.id);
printf("请输入学生性别:");
scanf("%s", student.gender);
printf("请输入学生入学时间:");
scanf("%s", student.entrance_time);
printf("请输入学生毕业时间:");
scanf("%s", student.graduate_time);
printf("请输入学生在籍状态:");
scanf("%s", student.status);
printf("请输入学生实习情况:");
scanf("%s", student.practice);
students[num_of_students++] = student;
printf("学生信息添加成功!\n");
}
// 显示所有学生信息函数
void show_students() {
if (num_of_students == 0) {
printf("当前没有学生信息!\n");
return;
}
printf("姓名\t学号\t性别\t入学时间\t毕业时间\t在籍状态\t实习情况\n");
for (int i = 0; i < num_of_students; i++) {
struct Student student = students[i];
printf("%s\t%s\t%s\t%s\t%s\t%s\t%s\n", student.name, student.id, student.gender, student.entrance_time, student.graduate_time, student.status, student.practice);
}
}
// 修改学生信息函数
void modify_student() {
if (num_of_students == 0) {
printf("当前没有学生信息!\n");
return;
}
char id[20];
printf("请输入要修改学生的学号:");
scanf("%s", id);
int index = -1;
for (int i = 0; i < num_of_students; i++) {
if (strcmp(students[i].id, id) == 0) {
index = i;
break;
}
}
if (index == -1) {
printf("没有找到该学生信息!\n");
return;
}
struct Student student = students[index];
printf("请重新输入学生信息:\n");
printf("请输入学生姓名:");
scanf("%s", student.name);
printf("请输入学生学号:");
scanf("%s", student.id);
printf("请输入学生性别:");
scanf("%s", student.gender);
printf("请输入学生入学时间:");
scanf("%s", student.entrance_time);
printf("请输入学生毕业时间:");
scanf("%s", student.graduate_time);
printf("请输入学生在籍状态:");
scanf("%s", student.status);
printf("请输入学生实习情况:");
scanf("%s", student.practice);
students[index] = student;
printf("学生信息修改成功!\n");
}
// 删除学生信息函数
void delete_student() {
if (num_of_students == 0) {
printf("当前没有学生信息!\n");
return;
}
char id[20];
printf("请输入要删除学生的学号:");
scanf("%s", id);
int index = -1;
for (int i = 0; i < num_of_students; i++) {
if (strcmp(students[i].id, id) == 0) {
index = i;
break;
}
}
if (index == -1) {
printf("没有找到该学生信息!\n");
return;
}
for (int i = index; i < num_of_students - 1; i++) {
students[i] = students[i + 1];
}
num_of_students--;
printf("学生信息删除成功!\n");
}
// 主函数
int main() {
int choice;
while (1) {
printf("1.后台登录\n");
printf("2.添加学生信息\n");
printf("3.显示所有学生信息\n");
printf("4.修改学生信息\n");
printf("5.删除学生信息\n");
printf("6.退出系统\n");
printf("请选择操作:");
scanf("%d", &choice);
switch (choice) {
case 1:
login();
break;
case 2:
add_student();
break;
case 3:
show_students();
break;
case 4:
modify_student();
break;
case 5:
delete_student();
break;
case 6:
printf("感谢使用教务管理系统,再见!\n");
exit(0);
default:
printf("输入有误,请重新输入!\n");
break;
}
}
return 0;
}
```
以上代码实现了教务管理系统的基本功能,包括后台登录、添加学生信息、显示所有学生信息、修改学生信息和删除学生信息等。希望能够帮助到您!
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)