学生成绩管理系统说明书

  • 格式:doc
  • 大小:288.00 KB
  • 文档页数:25

下载文档原格式

  / 25
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

唐山学院

数据结构课程设计

题目学生成绩管理系统设计与实现

系(部) 计算机科学与技术系

班级11计本1班

姓名尹云

学号**********

指导教师张小松

2013 年1 月 4 日至 1 月11 日共 2 周

2013 年1 月11 日

数据结构课程设计任务书

课程设计成绩评定表

1引言

学生成绩管理系统是一个教育单位不可缺少的部分,它的内容对于学校的决策者

和管理者来说都至关重要。为了提高学校管理员和学生管理和查询学生成绩的效率,需

要建立一个学生成绩管理系统,使我们可以在众多的学生信息中查找自己的成绩信息,面对学院大量的学生信息,学生只要登录本系统就可以查找到自己的成绩信息,而管理

员也方便去管理每学期的学生的成绩信息。学生成绩管理系统,使学生成绩信息管理工作规范化、系统化、程序化,避免学生管理的随意性,提高信息处理的速度和准确性,能够及时、准确、有效的查询和修改学生信息。学生成绩管理系统有效地管理学生成绩

相关信息,包括学生成绩的查询、录入、排序、统计等功能。该系统为用户提供了一个

简单的人机界面,用户可以根据提示信息进行各种操作。

本次设计使用的编程语言是C语言。

2问题分析

根据设计题目要求分析如下:

(1)本题目主要涉及顺序表的基本操作。

(2)在学生成绩管理系统中,录入学生信息时通常按录入顺序的先后,因此选用线性表。在查找学生信息时,是在大量无序的学生信息中,通过比较所给关键字与对应信息项,找到所要查找的学生信息。修改学生信息是在查找的基础上完成的,首先要找到需要修改的信息项,用输入的新数据覆盖原来的老数据,达到修改的目的。删除学生信息也是在查找的基础上完成的,先找到要删除的学生信息,从要删除的那个信息项开始,用后一个信息项覆盖它,一直循环到最后,即可完成删除。在查询不及格的学生信息时,只要把符合不及格的学生信息输出即可做到查询。在统计不同等级的学生人数时,是想要根据划分的不同等级,将所有学生信息分成符合条件的几个部分。

学生信息的存储结构:

struct STU/*定义学生信息结构体*/

{

int num;/*学号*/

char name[20];/*姓名*/

double Data;/*数据结构成绩*/

double Math;/*高等数学成绩*/

double English;/*大学英语成绩*/

double sum;/*总成绩*/

double ave;/*平均成绩*/

}STU,stu[100000]

3总体设计

3.1 模块结构图

图3.1 系统模块结构图

输入:学生信息的录入。

查找:按学号或姓名查找学生成绩,输入关键字,查找指定信息记录并输出。

修改:通过调用查找函数,找到要修改的学生信息,输入新数据覆盖原先的数据。

删除:通过调用查找函数,找到要删除的学生信息,用后一项覆盖前一项。

查询:查询各科成绩不及格的学生成绩,输出其学生信息。

排序:按总成绩排序,并输出排序后学生信息。

统计:分别统计各个等级的学生人数,并输出各个等级的学生人数。

退出:结束程序运行。

3.2 总体流程图

图3.2 系统流程图结构图

4详细设计4.1 录入模块

该模块实现的功能是从键盘录入学生信息。

4.1.1设计思路

void Getinformation()此函数用来录入学生信息。此函数用while循环达到循环输入的目的,只要输入的学号有效(在所有学号的范围内且不等于-1),就可以实现学生信息的不断录入,用-1做结束录入的标志。

4.1.2流程图

图4.1 录入模块程序流程图

4.2 查找模块

该模块实现的功能是根据所给的学生信息(关键字),查找该学生的全部信息并输出。

4.2.1设计思路

在void Seekinformation()函数中,用while循环可以实现循环输入查找信息,用if语句可以实现按学号和姓名两种查找方式。用if语句确定查找方式,通过调用void Seeknum ()或void Seekname()函数实现查找。在void Seeknum()(void Seekname())函数中,用for循环逐次查找,通过用if语句比较学号(姓名),返回符合条件的标号,并调用Printinformation()函数输出该生的所有信息。判断是否继续查找,继续查找则进入以上环境,否则退出查找。

图4.2 查找模块程序流程图

4.3 修改模块

该模块的实现的功能是根据需要修改学生信息。

4.3.1设计思路

在Modifinformation()函数中,此函数用于修改学生信息。基本原理就是用输入的新数据覆盖原来的老数据,达到修改的目的。本函数还调用了查找模块的函数,使修改前能按学号或姓名找到要修改的学生信息。

4.3.2流程图

图4.3 修改学生信息模块程序流程图

4.4 删除模块

该模块实现的功能是删除指定的学生信息

4.4.1设计思路

Deleteformation()此函数用于删除学生信息。同样调用了查找模块的函数。删除模块的关键语句是for(j=x;j

4.4.2流程图

图4.4 删除学生信息模块程序流程图

4.5 查询模块

该模块实现的功能是查询不及格(某科成绩低于60分)的学生信息并输出。

4.5.1设计思路

void Showfail() 此函数用于显示不及格学生的信息。能够按要求输出不及格学生的学号、姓名、各科成绩、平均成绩、总成绩。首先在for循环中用if语句搜索该学生是否有成绩不及格,当三门课中至少有一门不及格时就会输出该学生的相关信息。