c++课程设计-学生成绩管理系统的设计与实现

c++课程设计-学生成绩管理系统的设计与实现

ID:6781333

大小:2.03 MB

页数:28页

时间:2018-01-25

c++课程设计-学生成绩管理系统的设计与实现_第1页
c++课程设计-学生成绩管理系统的设计与实现_第2页
c++课程设计-学生成绩管理系统的设计与实现_第3页
c++课程设计-学生成绩管理系统的设计与实现_第4页
c++课程设计-学生成绩管理系统的设计与实现_第5页
资源描述:

《c++课程设计-学生成绩管理系统的设计与实现》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、课程设计(论文)课程名称程序设计实践题目学生成绩管理系统设计与实现实现院(系)理学院专业班级应数1401姓名学号指导教师2017年1月12日第17页学生成绩管理系统的设计与实现摘要 学生成绩管理系统是典型的信息管理系统,是学校教务管理的重要组成部分,其处理信息量很大。本课程设计是用C++实现对学生的成绩管理作一个简单的模拟,实质是建立学生成绩单链表,每条记录由学号、姓名与成绩组成,即链表中每个结点由4个域组成,分别为:学号、姓名、成绩存放下一个结点地址的next域。用菜单选择操作方式完成6项功能分别写成六个函数,创建学生成绩对应建立学生单链表的功能,对全部学生成绩的排序,最后保存在文件中,另

2、外四个功能分别对应单链表的显示、查询、修改与删除四大基本操作。该系统中的数据采用线性表中的链式存储结构即单链表来存储,用类类型定义每个学生记录并采用外部文件方式记录数据简便数据的读取与保存。通过对学生成绩管理系统的制作,能够让使用者迅速地对学生的成绩做各项处理和显示,最终的到想要的信息,方便且易于操作。关键词学生成绩管理系统,C++,链表,文件目录1总体介绍课程设计内容11.1课设内容总体介绍11.1.1设计内容11.1.2课程设计的要求11.2个人完成部分22主要算法与原理32.1链表32.1.1链表的介绍32.1.2链表的创建与输出 32.1.3链表结点的访问 42.1.4链表结点的插入

3、 42.1.5链表结点的删除 42.2文件的使用 42.2.1.打开文件42.2.2关闭文件52.2.3文本文件的读写53学生成绩管理系统的设计与实现63.1学生类成员及函数63.2学生信息类成员及函数63.3主要函数说明73.4学生成绩管理系统的总结构图73.5模块的流程图73.6难点及难点的解决84结果分析及改进95小结和心得136参考文献14附录151总体介绍课程设计内容1.1课设内容总体介绍1.1.1设计内容制作学生成绩管理系统,实现数据录入、数据删除、数据浏览以及数据查询等功能。1.1.2课程设计的要求包括系统设计要求,开发环境要求,技术文档要求三部分。(1)系统设计要求:(a)学

4、生成绩管理系统中不同使用单位(用户)的学生人数事先无法确定。(b)该学生成绩管理系统要求有学生成绩录入,查询,修改,删除,排序。(c)系统使用文字菜单,用户通过选择菜单项的编号,实现系统对子模块的调用。(d)每个班级每门课程的成绩可以从学生的成绩总表提取出子表并存储成一个文本文件。该文本文件名由班级号和课程名拼音字符串构成。输入班级号和课程名字符串后自动生成文件名。(e)每个学生学习的课程有数学,英语,C++。(f)学生的成绩总表结构约定为(学号,姓名,课程名,总评成绩).总评成绩等于各科成绩之和。(g)学号是一个9位整数构成的字符串,学号的编码规则:入学年份+在读年级+在读班级+班内编号;

5、入学年份用4位整数构成字符串,如2014年入学则表示为:”2014”;在读年级用1位整数构成字符串,如正在1年级读书则表示为:”1”;在读班级用2位整数构成字符串,如正在1班读书则表示为:”01”;班内编号用2位整数构成字符串,如在班内编号为23号则表示为:”23”。(2)开发环境要求软件环境:windowsXP/windows7,VisualC++硬件环境:计算机(Pen4CPU,512MRAM,60G以上硬盘,输入输出设备)第24页共28页(3)技术文档要求:按软件工程技术文档要求。要求流程图绘制规范,模块功能描述清晰1.2个人完成部分第一阶段:学习链表相关知识来动态分配存储空间,并作出

6、链表的程序及学习文件在C++中的应用;第二阶段:录入学生成绩、显示学生成绩、查询学生成绩并画出相关流程图,并与队友共同把所有的程序进行整理并调试成功;第三阶段:独立完成论文的书写。第24页共28页2主要算法与原理2.1链表2.1.1链表的介绍数组式计算机根据事先定义好的数组类型与长度自动为其分配一连续的存储单元,相同数组的位置和距离都是固定的,也就是说,任何一个数组元素的地址都可一个简单的公式计算出来,因此这种结构可以有效的对数组元素进行随机访问。但若对数组元素进行插入和删除操作,则会引起大量数据的移动,从而使简单的数据处理变得非常复杂,低效。链表是一种动态数据结构,用一组任意的存储单元(可

7、以是连续的,也可以是不连续的)存放数据元素。链表中每一个元素成为“结点”,每一个结点都是由数据域和指针域组成的,每个结点中的指针域指向下一个结点。Head是“头指针”,表示链表的开始,用来指向第一个结点,而最后一个指针的指针域为NULL(空地址),表示链表的结束。可以看出链表结构必须利用指针才能实现,即一个结点中必须包含一个指针变量,用来存放下一个结点的地址。实际上,链表中的每个结点可以用若干个数据和若干个指

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。