欢迎来到天天文库
浏览记录
ID:38723604
大小:179.89 KB
页数:34页
时间:2019-06-18
《学生学习成绩管理系统》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、中南大学本科生课程设计报告书题目学生学习成绩管理系统学生姓名学院信息科学与工程学院专业班级33C语言程序设计实践报告一、设计实践的目的、任务与要求本设计实践是“C语言程序设计”课程学习的一个关键环节。它是根据教学计划的要求,在教师的指导下,对学生实施程序设计训练的必要过程,是对前期课堂学习内容的综合应用及其效果的检验和提高。其目的在于培养学生综合运用理论知识来分析和解决实际问题的能力、以及严谨的科学态度和良好的程序设计习惯。本次设计实践,要求设计者基于结构化程序设计思想和所用C语言开发环境与工具,并运用“软件工程”和“数据结构”中的有关概念和方法,针对具
2、体设计题和要求,分析功能要求,划分功能模块,用链表结构设计功能模块函数,以菜单方式调用相应功能模块来实现信息和数据处理。本次设计时间为二周,要求独立完成,具体任务如下:1、学习、掌握采用结构化程序设计思想进行TurboC(或WinTC,VC)环境下程序设计的方法;另外学习C语言简单图形语句以及简单图形界面设计(参见参考文献5、6)。2、采用C语言设计一个“学生学习成绩管理系统”,上机编程、调试并演示该管理系统中的各功能模块(具体内容见四)。3、设计完成后,每人必须按时提交与验收程序一致的、能按设计功能和性能要求运行的程序的清单,一份关于本次程序设计和使用
3、介绍的纸质文档即程序设计、使用说明书及个人总结(实践心得、体会等)。二、任务“学生学习成绩管理系统”的基本功能说明“学生学习成绩管理系统”用于对学生学习成绩数据文件的新文件创建和老文件管理,并可以进行密码设置。具体要求实现的功能如下:1、输入/添加记录:将每一个学生的学号、姓名和各科学习成绩作为一个记录进行输入或添加。要求经过密码验证后能建立一个新的数据文件或给已建立好的数据文件增加记录。2、显示、查询记录:能按学生姓名(或学号)显示、查询一个或多个学生的各门(或某门)功课的成绩和平均成绩。3、修改记录:可以对数据文件中的任意记录的数据进行修改,在修改前
4、后对该记录的内容进行显示,并设确认提示。(要求设置密码,验证通过后方可进入修改环节)4、删除记录:可以删除数据文件中的任一记录,包括逻辑删除(具有恢复功能)和物理删除(不可恢复)。(说明:该功能也应设置为经过验证密码后才可实施删除)5、成绩排序:采用不同的排序方法对单科成绩和总(或平均)成绩进行排序,但不能改变原记录的顺序。6、统计功能:(A)计算各门课程全班总成绩及平均成绩;(B)统计各门课程得分为100、90~99、80~89、70~79、60~69和不及格学生的人数,以及与全班总人数的百分比。7、数据文件保存和上载功能:能按文件名保存已建立的或修改
5、的整体记录数据,能按文件名上载/倒入保存在磁盘的整体记录数据。8、其他:该软件应具有系统名称、设计单位或个人等基本信息。三、此程序的功能存储学生的成绩信息,可以添加、显示、排序、查询、修改、删除、恢复、统计学生的信息,33运行程序时,先输入专业班级,如果没有对应的文件,进入操作完成后,选择保存或退出系统并保存所做更改时,程序将创建一个和你输入的专业班级同名的文件存储你输入或改变的学生信息,如果有对应的文件,你进入操作时,程序将找到相关文件,读取文件里面的信息。如果是第一次进入,先设置密码,连续两次输入相同的密码,如果不是第一次进入,要输入原来设置的密码,
6、进入后根据提示选择序号进行相关操作,操作过程中,如果输入错误信息,程序可以处理输入的一些错误信息,如果想中途保存,可以选择保存,再进行其它操,也可以最后退出程序时,选择退出系统并保存;如果并不想保存此前的操作,可以选择退出系统不保存。可以对存储被删除学生信息的文件进行删除操作,但要在没有调用删除和恢复函数之前,如果在调用删除和恢复函数之后操作,将提示“数据正在被使用,请下次启动程序时再清理,按任意键返回”。四、程序设计方案1、数据结构采用链表存储学生的基本信息,包括学号、姓名、学生成绩2、整体设计思想在main主函数中定义一个结构体指针变量head,对于
7、添加、修改、删除这样的函数,有参数,它们的实参都为head,返回值也赋给head,对于排序函数有参数,实参也为head,但不对head直接处理,因为我们并不希望经过排序后就改变原有学生逻辑顺序,对于排序这样的函数所需的变量,由head提供学生信息,再创建另外一个链表,然后排序函数再对这个新链表处理,处理后不返回任何值。head在各函数之间传递信息,每个函数运行后,都要保证head要么为NULL(没有学生成绩信息),要么为学生成绩的最新信息。在启动程序的时候把NULL赋给head,当head变量作为一个实参数传递给函数时,此时head为NULL,函数对he
8、ad变量不做任何处理,而读取已经保存在文件里的已有学生信息进行处理,如果文件里也
此文档下载收益归作者所有