内容发布更新时间 : 2024/11/19 15:12:15星期一 下面是文章的全部内容请认真阅读。
HUNAN UNIVERSITY
程序设计训练 报 告
题 目 学生成绩管理系统 学生姓名 学生学号
专业班级
指导老师
湖南大学程序设计训练报告
目 录
一 程序功能简介…………………………………………………………………………….........3 二 本人完成的主要工作…………………………………………………………………….....3 三 设计方案 …………………………………………………………………………….........3 1) 设计分析…………………………………………………………………………….........3 2) 模块的功能及程序分析…………………………………………………………......4 3) 核心算法流程图……………………………………………………………………......7 4) 核心源程序模块………………………………………………………………………..8 5) 操作方法简介…………………………………………………………………………...8 6) 实验结果…………………………………………………………………………….........9 8) 设计体会…………………………………………………………………………….........11
四 附录 ……………………………………………………………………………..............12
一、 程序功能简介;
本程序作为一个学生成绩管理系统,用户可以首先使用管理员模式初始化该系统。初始化完成之后,用户可以选择使用成绩记录人模式进入系统,对学生成绩进行记录。系统自动储存所记录的学生成绩,然后用户可根据不同需要来选择不同的功能来使用程序,其中包括成绩查询与增减,成绩排序,成绩分析等功能。
二、 本人完成的主要工作;
程序设计分析,绘制程序流程图,写出大体结构算法以及各个
核心算法模块,写出核心源程序,对源程序进行算法优化,对源代码进行多次试验验证其正确性,完成源代码的测试以及代码书写规范检测。
三、 设计方案;
1) 设计分析;
首先拿到这个题目,我就开始思考如何将这个看似简单的系统做的较为完善,而不是简简单单的学生成绩管理系统,学生管理系统自然是这个题目的核心,从中发散思维,我想到了几个比较细小的地方。例如:如何很好的将程序中的功能步骤化,系统化以及便利化。基于C语言程序的特点,我还联想到了对信息的保存问题。这些问题都随着代码的一步一步完善而解决。管理员系统与查询系统的选择很好的解决了这些问题。
2) 模块的功能及程序说明;
整个系统除了主函数外,另外还有10个函数,实现八大功能:输入功能、显示功能、查找功能、排序功能、插入功能、保存功能、读取功能。各个函数的详细设计说明分别如下: 1、 主函数 main()
利用无限次循环for(;;)和swithch()实现各函数的调用,系统根据输入的数字选项来调用相应的函数。 2、 初始化函数 STUDENT *init()
这是一个无参函数,里面只有一个语句,它的作用是使链表初始化,使head的值为NULL。比如:没有这个函数的话,在你没有输入任何数据的情况下,去执行显示功能的时候会显示一些乱码! 3、 菜单选择函数 int menu_select();
这是一个无参函数,主要实现“功能选择”的界面,在这个界面里有显示系统的九大功能,根据每个功能前面的序号进行选择,中间还显示系统当前的时间。等执行完每一个函数功能后,按任一键回到主界面也要通过这个函数来实现! 4、 输入记录函数 STUDENT *create()
这是一个无参函数,用来执行第学生成绩记录的输入,当学生为0时停止输入,函数结束后,带回一个指向链表头的指针head。 算法:先声明一个首节点head,并将head->next设为NULL。每输入一个数据就声明一个新节点p,把p->next设为NULL,并且链接到之前列表的尾端。
5、 显示记录函数 void print(STUDENT *head)