(桂电)学生成绩管理系统(论文加源代码) 数据结构与算法课设(2)

2019-08-31 19:33

用户登录 学生成绩管理系统 学生用户 查成统 询绩计 记 老师用户 退出 添加记主菜单 修改记录 删除记录 来 查询记统计记成绩统计 存读记录 记统计 录 录 录 录 录

2.4 开发环境

开发环境是用Visual C++ 6.0,简称VC或者VC6.0,是微软推出的一款C++编译器,将“高级语言”翻译为“机器语言(低级语言)”的程序。Visual C++是一个功能强大的可视化软件开发工具。它是一种可视化的编程工具,它基于windows操作系统。它有两种方式来建立应用程序,一种是通过VC6.0的可视化编程工具,另一种是通过visual c++6.0的代码编辑器,手工编写代码。本系统所用的语言是C语言,C语言是目前世界上流行、使用最广泛的高级程序设计语言。

C语言对操作系统和系统使用程序以及需要对硬件进行操作的场合,用C语言明显优于其它高级语言,许多大型应用软件都是用C语言编写的。C语言具有绘图能力强,可移植性,并具备很强的数据处理能力,因此适于编写系统软件,三维,二维图形和动画它是数值计算的高级语言

5

3 详细设计

3.1登陆界面与主界面的实现

系统登录界面用了C选择控制语言。用于对进入系统的用户进行安全检查,阻止非法用户的进入。验证账号及密码,通过判断账号及密码是否符合申请的账号和密码,如果符合则允许登录,否则提示用户账号或密码不正确。

本系统的登录界面:

主界面:

在主界面中包括“①班级成绩添加②班级成绩显示 ③班级成绩统计 ④班级成绩查询 ⑤班级成绩修改 ⑥班级成绩表 ⑦班级成绩存档 ⑧ ⑨班级成绩读入 ⑩退出”等全部的功能,之所以设计这麽一个主界面,一是因为能使用户对程序操作的流程更加清晰简明,二是保证了用户同时只能对一个文件进行操作系统的要求,保证了系统的正确性和易用性。

6

3.2 详细设计思想

3.2.1确定程序主要功能模块

这个就比较简单了,主要是根据系统设计的说明及要求来设计,从而设计了九大功能模块,有文件操作,有系统维护功能,排序和统计功能,有输入输出等基本功能,比较人性化,添加了较多的提示语。这个程序的主要功能时输入学生的学号,姓名,学期和三科成绩来对其进行存储,在存储后可以对学生的成绩按学号及学期或姓名及学期来进行查询,同时输出此同学的平均分及总分,之后可以对某个同学的成绩进行各种操作,例如修改,删除等,同时还可以对学生们的成绩按照总分或单科成绩排序,在整个过程中所做的操作都会保存到\文件中并显示。

3.2.2确定语言算法

由于之前都没有做过类似的设计,所以一时间不能够确定到底使用何种语言来设计本系

统,所以在网上看了一些其他人设计的程序,链表的、数组的,各种各样的,也不知如何选择,但是仔细地看了其中的设计思想,最终还是用C和数组的来做,一是觉得本人对链表掌握的不是很熟练,那么在设计过程中容易产生不能理解的错误,耽误时间,二是想运用C,可以巩固一下所学的数据结构的知识,之前做实验的时候都没怎么用所学的知识,这时候想练练。就这样确定了整体的结构算法

7

3.3 系统结构体的设计

性 姓学别 号 名 struct Student //结构体 {

int term;//学期 int num;//学号 char name[12];//姓名 float mark1;//成绩 float mark2; float mark3; float sum;//总分 float average;//平均分

Student 数据库 算法 C语言 平均分 总分 }

3.3 各种模块的实现

Main()函数的设计用Mvoid main()来实现,主要是来显示主菜单,使用户选择操作。在main()函数中主要运用do-while循环语句和switch()-case选择判断语句来调用相关,选择各种功能模块。系统的运行是在一个永真的循环里进行的,只有在主界面并选择“退出”时,才会跳出永真循环,并退出程序。

3.3.1录入学生记录模块

用函数int add_text(struct Student stud[], int n) 来实现

主要功能用来对学生的记录进行添加。选择\,进入模块录入所需学生个数的学生信息,比如学号,姓名,成绩等。然后进入主菜单,根据主菜单来在此基础上进行操作。期间会有一些提示语,按此操作即可。本函数用到了文件操作的指针FILE *fp。

3.3.2显示学生记录模块

用函数void output_stu(struct Student stud[], int n, int i)来实现 主要功能是用来显示学生的信息进行输出。在系统已经录入了学生资料的前提下,只用该功能可以显示学生的信息资料等等。同时也会自动跳出主菜单进行后续操

8

作。主要的程序代码就是从文件的读操作和界面显示操作。 3.3.3添加学生资料模块

用函数void input_num(struct Student stud[], int n, int i) 来实现。主要功能是用来添加学生资料,成绩。若有重号则提示重新输入,,就可以使用本模块来进行添加利用for循环进行输入新学生记录,输入完后,最后会有一个提示语句:是否继续输入 (y\\n),y是继续输入,n是返回主菜单否则将返回主菜单,本模块功能到此结束。在此期间会根据语句算出总分和平均分,并默认按学号排序保存到文件中去

3.3.4 查询,删除,修改模块

分别用三个函数来实现,删除箅修改模块是基于查询模块上的,要先查询你要进行操作的内容,然后再进行其它操作。

查询是用用函数int find_stu(struct Student stud[], int n)来实现,它有两种方式,主菜单先5进入查询,会出现提示:请选择您要查询的方式:(1:按学号2:按名字;),用for和if语句, if (strcmp(stud[i].name, you_choice) != 0) 如果第i项与查找信息不匹配则查询失败,否则查询成功,调用显示函数,输出该学生信息,之后会出现提示:是否进行1:修改2:删除3:退出选项。

修改是用函数void updata_stu(struct Student stud[], int n, int y) 来实现的,修改也可以进行任选一门课进行修改,会有提示:请输入您要对哪一门成绩进行修改?( 0:数据库; 1:算法; 2:C语言) 之后输入该课程的成绩就可以了。 删除是用void delete_stu(struct Student stud[], int n, int y)来实现的,选择了以后,还会有判断提示:确认您要进行删除吗?(y/n),y是确定,之后就会回到主菜单,n是不删除。

退出是如果不进行任何操作后,返回到主菜单。

9


(桂电)学生成绩管理系统(论文加源代码) 数据结构与算法课设(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:小学生理想信念教育计划 - 小学教育 - 教育专区

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: