学生成绩管理系统(C语言)的设计方法论述

来源:百度知道 编辑:UC知道 时间:2024/07/02 17:59:21
求一份 学生成绩管理系统(C语言)的设计方法论述

随便写点。。。也不要太随便。。呵呵~~
是要一段文字的。。不要代码的。。

程序设计的基本目标是用算法对问题的原始数据进行处理,从而获得所期望的效果。但这仅仅是程序设计的基本要求。要全面提高程序的质量,提高编程效率,使程序具有良好的可读性、可靠性、可维护性以及良好的结构,编制出好的程序来,应当是每位程序设计工作者追求的目标。而要做到这一点,就必须掌握正确的程序设计方法和技术。而C语言是一种结构化语言。它层次清晰,便于按模块化方式组织程序,易于调试和维护。所以采用结构化程序设计方法,对管理系统进行自顶向下,逐步细化,模块化设计.

对题目的需求分析得出:管理系统对学生的成绩信息进行管理,学生信息包括:学号、姓名、学期、每门课程的成绩、平均成绩、名次。实现:学生信息的录入;修改;删除和查询,按学期、学号、姓名等查询。
而对输入的学生成绩正确的计算了平均分、最高分、最低分、统计了不及格情况及各分数段的人数。并按要求的格式正确打印.
【功能函数设计】
这个程序比较烦琐,要求计算平均分,还要算最高分、最低分、统计不及格人数和按不同科目的分数顺序输出,如果每一个都写一个函数,程序会非常的大,同时效率也不是很高。在此用的应该是一种比较好的方法,此处用到了以下几个函数:
输入函数:
void input (mark *s)/*数据输入函数*/
输出函数:
void print (mark *p)/*输出学生的记录的函数*/
void den(mark *p,mark *q,int *m)/*该函数的功能是将第一个的记录赋给第二个*/
此函数是为后面的sign函数的调用,把一个人的信息存在一个链表中,
void converse (mark *s,fsp *q)/*将学生的记录转放到中间变量q中*/
此函数实现的功能是把数学,英语,计算机的个作为一个链表存储在一起,为后面的过程更简便。
void sign(mark *s,mark *a,mark *b,mark *c,mark *d,fsp *q)
此函数的功能是对学生的各科成绩及平均分进行排序。
void count(mark *s) /*统计各科平均分 各科的最高(低)分及各分数段的人数*