学生选课管理系统 流程图.docx

上传人:b****3 文档编号:3918817 上传时间:2023-05-06 格式:DOCX 页数:15 大小:144.07KB
下载 相关 举报
学生选课管理系统 流程图.docx_第1页
第1页 / 共15页
学生选课管理系统 流程图.docx_第2页
第2页 / 共15页
学生选课管理系统 流程图.docx_第3页
第3页 / 共15页
学生选课管理系统 流程图.docx_第4页
第4页 / 共15页
学生选课管理系统 流程图.docx_第5页
第5页 / 共15页
学生选课管理系统 流程图.docx_第6页
第6页 / 共15页
学生选课管理系统 流程图.docx_第7页
第7页 / 共15页
学生选课管理系统 流程图.docx_第8页
第8页 / 共15页
学生选课管理系统 流程图.docx_第9页
第9页 / 共15页
学生选课管理系统 流程图.docx_第10页
第10页 / 共15页
学生选课管理系统 流程图.docx_第11页
第11页 / 共15页
学生选课管理系统 流程图.docx_第12页
第12页 / 共15页
学生选课管理系统 流程图.docx_第13页
第13页 / 共15页
学生选课管理系统 流程图.docx_第14页
第14页 / 共15页
学生选课管理系统 流程图.docx_第15页
第15页 / 共15页
亲,该文档总共15页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

学生选课管理系统 流程图.docx

《学生选课管理系统 流程图.docx》由会员分享,可在线阅读,更多相关《学生选课管理系统 流程图.docx(15页珍藏版)》请在冰点文库上搜索。

学生选课管理系统 流程图.docx

学生选课管理系统流程图

学生管理系统

关仁杰

一、简介:

本系统称为“学生选课管理系统”,主要功能是实现对学生信息和教师信息的管理,以及学生成绩的管理。

该系统分为三级身份:

管理员、教师、学生。

其中管理员的权限有:

1)、添加学生或老师的信息,2)、删除学生或老师信息,3、修改学生或老师信息,4)查找学生或老师信息。

教师的权限:

1)仅可以修改自己密码,2)查看所有关于自身的信息,3)修改其所授科目的学生科目的成绩。

学生的权限:

仅可以修改自己的密码,查看所有有关自己的信息,另外还要可以选课。

二、设计思想;

[1]:

分别把学生信息、科目信息和教师—科目信息建立三个链表。

//科目信息

typedefstructsubject_info

{

floatSUB_notes[3];//科目成绩

intSUB_csscore;//科目学分

charSUB_csname[32];//科目名称

structlist_headlist;

}SUB;

//学生信息

typedefstructSTU_info

{

floatSTU_totalscore;//总分

intSTU_id;//学号

intSTU_age;//年龄

intSTU_grade;//年级

intSTU_place;//名次

charSTU_name[32];//姓名

charSTU_psword[32];//密码

SUBsubject[3];

structlist_headlist;

}STU;

//教师信息:

typedefstructTCH_info

{

intTCH_id;//工号

charTCH_name[32];//姓名

charTCH_psword[32];//密码

SUBsubject[1];

structlist_headlist;

}TEC;

//管理员信息

typedefstructADM_info

{

charADM_usename[8];

charADM_psword[6];

}ADM;

ADMuse[1];

#defineY'y'

#defineN'n'

#defineS_FLAG's'

#denfineT_FLAG't'

#defineA_FLAG'a'

voidgettime();//获取当前时间

voidmain_menu();//主菜单

voidstu_login();//学生登录

voidopenf(char*filename);//判断文件是否存在

voidtec_login();//老师登录

voidadm_login();//管理员登录

voidadm_nextmenu();//管理员2级菜单

voida_updt_stuinfo();//操作学生信息

voida_updt_tecinfo();//操作老师信息

voida_updt_myinfo();//操作管理员自身信息

voida_add_stuinfo();//添加学生信息

voida_add_tecinfo();//添加老师信息

voida_mdify_stuinfo();//修改学生信息

voida_del_info(charflag);//删除信息

voida_mdify_tecinfo();//修改老师信息

voida_seek_stuinfo();//查找学生信息

voida_seek_tecinfo();//查找老师信息

voidshow(charflag);//显示信息

voidsave(charflag,charsystem);//保存信息

voidcheck(charflag);//验证密码

voidcommom();//公用函数集合

voida_show(charflag);//显示信息

voida_seek_info(charflag);//查找信息

voida_mdify_info(charflag);//修改学生或老师信息

voidstu_nextmenu(inttmpid);//学生菜单

voidtec_nextmenu(inttmpid);//老师菜单

voids_show_myinfo(inttmpid);//学生显示自己信息

voidt_show_myinfo(inttmpid);//教师显示自己信息

voids_updt_myinfo(inttmpid);//学生更新自己信息

voids_select_subject(inttmpid);//学生选课

voidt_updt_stuinfo(inttmpid);//教授更新自己信息

voidt_updt_myinfo(inttmpid);//教授显示自己信息

voidreadf();//从文件中读取信息

voidstu_sort();//对学生链表排序

floatave(floatcore[3]);//求平均成绩

float(*f)(floatcore[3]);//

intinputpsword(char*pass);//输入密码回显*

 

[2]:

模块分析

开始

主界面

 

E:

exit1:

student2:

teacer3:

admin

 

退出stu_logintec_loginamd_login

 

student_nextmenuteacher_menuadminmenu

 

student_nextmenu

 

 

stu_show_myinfostu_update_mypswordstu_select_mysubject返回上一级

 

\teacher

 

 

tec_show_myinfo()tec_update_mypsword();tec_next_menu();返回上一级

 

tec_next_menu()

 

tec_show_stuinfo()tec__update_stuscore();返回上一级

 

输入信息、保存修改

 

保存

 

adm_nextmenu

 

 

ADM_update_stuinfoADM_update_tecinfoADM_updat_myinfo返回上一级

AdddelupdateshowAdddelupdateshowchange_mypsword

 

[3]:

流程图

 

 

 

1234

N

 

YY

 

YYYY

 

q

 

 

N

 

Y

 

1234

Y

N

N

N

YYY

 

 

Y

 

1234

Y

N

N

N

 

YYY

 

 

Y

 

1234

Y

 

N

N

 

N

YYY

 

三、总结

《学生选课管理系统》,5天。

这之前学的C语言基础及C语言高级编程。

对于程序设计来说这些就是指导性的理论,我学的还算认真,自我感觉良好。

听说要做《学生选课管理系统》的时候,都有着霍霍欲试的冲动。

然而5天的历程却诉说着理论与实践结合并非易事。

开始拿到这个小项目时候还真不知道怎么下手,像猎到刺猬的饿狼,虽饥渴难耐却又无从下嘴,只好看着猎物徘徊、踌躇。

后经老师指教总算有点了头绪,真是“山重水复疑无路,柳暗花明又一村”。

我首先采取的就是化整为零的模块化分析,把整个系统分为:

管理员模块、教师模块及学生三大模块,然后各个模块再按照不同的功能细分成不同的模块。

然而我在运用此思想时有点误解。

我在写代码时,把代码模块化过了头了。

我把每个函数都单列在每个相对应的文件里,搞得有点乱乱的。

又经老师指点后,我把各模块下相应的函数都归并到一个文件里,这样就显得疏朗多了。

修正这点失误着实用了我不少时间,然而,接下来我又卡住了。

因为系统需要操作大量的数据,所以就牵涉到如何把这些数据保存、读取、修改等操作。

我最初的思想是把这么多数据在建立后就存入文件里,然后在需要操作时再读取文件信息进行操作。

时间毕竟有限,这样想就这样做,然而结果并不像我预期的那样,我不知道哪里出了问题,先是梳理思路后是检查代码再者就是上网查找相关信息。

几经曲折,总算离我预期结果不远时,又卡住了!

这已经是第四天了,无奈,只好在去吃饭的路上向我同桌取经。

听了他说,“你连软件设计的基本思想都不懂”之后我一脸迷惘。

经他细心讲解才明白我这种思路做出来的程序要不断的存取数据,需要较多的系统资源,效率会很低。

他给我提供了另外一种思想:

在程序启动时把所需要的数据从文件里读到内存,然后直接在内存里操作,在需要时在进行保存。

呵呵,从我向他请教还没有10分钟,他就把我从迷惘中带回了透彻的光明。

这时,离时限还有一天半的时间,而我只是实现了程序的基本框架。

但换了思路之后,我速度明显提高了,在剩下的时间里把程序的基本功能都实现了。

看样子,交流真的很重要,遇到问题时最好不要一个人绞尽脑汁,要多交流请教啊!

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 党团工作 > 入党转正申请

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2