实时设计——教务管理系统

该博客介绍了教务管理系统的实时设计过程,包括已完成的页面设计、学生账号注册的部分功能、系统界面、帮助页面和登录系统的部分实现。尽管发现框架存在一些问题,不适合完全应用于教务管理,但仍有部分功能可供参考。遗憾的是,由于时间限制,一些高级功能未能完成。
摘要由CSDN通过智能技术生成

功能待逐渐实现:
已实现内容:
1:页面设计。
2:学生账号注册的2/3.。
3:关于教务管理系统界面。
4:帮助页面。
5:登录系统2/3。
6:登录以后的界面。
7:界面中的操作没有实现。
8:综合分析,这个框架并不适合教务管理系统,有些许问题,但可能还有一些函数有用,供大家参考,在写新的blog,实际上由于时间原因,还有很多高端操作可惜不能完成了。

//头文件区上分界线 
#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
#include<conio.h>
#include<cstdlib>
#include<windows.h>
using namespace std;
#define ture 1
#define false 0
//头文件区下分界线 
char sa[200];

//goto 用到D 

// 结构体区上分界线 
/*
刚开始的时候,先不要求要有太高级的操作,所以简化操作。
现在是主干是两条带有两个尾指针的链表,一条是学生信息链,一条是课程信息链。
有一些功能在初次代码中将不会去实现,之后有时间就去完善。 
1:在这里,简化了老师这一人物,将它看成了课程,如果要加上老师这一人物,将会变为带有三个尾节点的链表。
2:在这里,我没有用数组二分查找加快查找过程。
3:在这里,我没有用模糊查询。 
4:以后可以考虑加密保等方式加强安全性。 
5:这里先不存在文件中 
6:没有花里狐臊的页面 
*/
//成绩 
typedef struct GPA{
   
	double uaual_score;     //平时成绩 
	double test_score;      //期末成绩 
	double rate;            //期末成绩占比0到1 
	double overall_score;    //综合成绩 
} GPA,*Ptr_GPA; 

//主干学生节点,这个学生节点是作为主干来的 
typedef struct STU1{
   
	char id[20];      			//学号:统一12位,考虑到现实情况学号没有过长的。
	char code[30];              //密码用字符型方便隐私。 
	char clname[100];           //班级:全称。 
	char name[30];    			//姓名:汉字,一个汉字占两个字节 。 
	int sex;                    //性别:1表示男性,2表示女性,0表示不详。 
	int age;                    //年龄: 
	long long dorid;            //宿舍号:一般不会太长。 
	long long pnum;             //电话号码:电话号码统一11位。 
	struct STU1 *next;              //学生指针,指向下一个节点。 
	struct CLASS2 *cla;               //课程节点指向课程 。   
	                            //还有各种各样的功能,如平均成绩已经等等待补充的 
} STU1,*Ptr_STU1;
//分支学生节点,这个学生节点是作为分支来的。 
typedef struct STU2{
   
	char id[20];      			//学号:统一12位,考虑到现实情况学号没有过长的。 
	char name[30];    			//姓名:汉字,一个汉字占两个字节 
	char clname[100];           //班级:全称。 
	GPA gpa;                    //最新分数:包含3种分数 
	int rebuild;               //重修次数:0表示没有,非0表示次数 
	long long pnum;             //电话号码:电话号码统一11位
	struct STU2 *next;              //学生指针,指向下一个节点学生节点 
} STU2,*Ptr_STU2;
//主干课程节点,这个课程节点是作为主干来的 
typedef struct CLASS1{
   
	char id[20];               //课程编号:统一15位
	char name[100];             //课程名称
	char code[30];              //本科目管理员密码 
	int test_aver_score;        //考试平均成绩
	GPA avergpa;                //最新分数:包含3种平均分数
	int credit;                 //学分 
	int rebuild;                //重修人数,重修人名以后写,是一个函数 
	struct STU2 *stu;               //选课学生,可以做很多事通过这个
	struct CLASS1 *next;             //课程指针,指向其他课程 
} CLASS1,*Ptr_CLA1;
//分支课程节点,这个课程节点是作为分支来的
typedef struct CLASS2{
   
	char id[20];                //课程编号:统一15位
	char name[100];             //课程名称
	GPA gpa;                    //最新分数:包含3种分数 
	int credit;                 //学分 
	int rebuild;               //重修次数:0表示没有,非0表示次数
	struct CLASS2 *next;             //课程指针,指向其他课程 
} CLASS2,*Ptr_CLA2;
//结构体区下分界线 

//函数声明区上分界线
Ptr_STU1 Open_or_Init(Ptr_STU1 L);         //从文件中读取信息 

Ptr_STU1 Insert1(Ptr_STU1 L,STU1 stu);     //按学号字典序插入,创建新的学生节点  

Ptr_STU1 Search1(Ptr_STU1 L,char id[]);    //遍历查找账号

void Page1();                              //最开始的登录界面 

Ptr_STU1 Page1_1(Ptr_STU1 L);              //学生登录页面 

void Page1_1_in(Ptr_STU1 L);               //学生操作页面

int Page1_1_choice(Ptr_STU1 L);                      //学生界面功能选择区(管控功能分支的)

int Page1_1_1_mod(Ptr_STU1 L);             //学生信息查看与修改 

void Page1_4(STU1 *Ptr_stu1);              //学生注册页面 

void Page1_6();                            //关于教务管理系统页面 

void Page1_7();                            //帮助页面 
//函数声明区下分界线 

//页面区上分界线 
//主页面 
void Page1(){
                 //登入页面 
	printf("**********************************************************************************************************************\n");
	printf("*                                                                                                                    *\n");
	printf("*                                   欢迎使用华南农业大学教务管理系统                                                 *\n");
	printf("*                                                --设计师:陈绪栋                                                    *\n");
	printf("*                                                                                                                    *\n");
	printf("**********************************************************************************************************************\n");
	printf("*                                              请您选择需要的操作                                                    *\n");
	printf("*                                 ---------------------------------------                                            *\n");
    printf("*                                *|                                     |*                                           *\n");
    printf("*                                *|                                     |*                                           *\n");
	printf("*                                *|            1:学生账号登录           |*                                           *\n");
	printf("*                                *|                                     |*                                           *\n");
	printf("*                                *|            2:教师账号登录           |*                                           *\n");
	printf("*                                *|                                     |*                                           *\n");
	printf("*                                *|            3:管理员账号登录         |*                                           *\n");
	printf("*                                *|                                     |*                                           *\n");
	printf("*                                *|            4:学生账号注册           |*                                           *\n");
	printf("*                                *|                                     |*                                           *\n");
	printf("*                                *|            5:教师账号注册           |*                                           *\n");
	printf("*                                *|                                     |*                                           *\n");
	printf("*                                *|            6:关于新教务系统         |*                                           *\n");
	printf("*                                *|                                     |*                                           *\n");
	printf("*                                *|            7:帮助                   |*                                           *\n");
	printf("*                                *|                                     |*                                           *\n");
	printf("*                                *|                                     |*                                           *\n");
	printf("*                       
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值