收藏 分销(赏)

C专业课程设计学生成绩标准管理系统·.doc

上传人:精*** 文档编号:2864540 上传时间:2024-06-07 格式:DOC 页数:44 大小:317.54KB
下载 相关 举报
C专业课程设计学生成绩标准管理系统·.doc_第1页
第1页 / 共44页
C专业课程设计学生成绩标准管理系统·.doc_第2页
第2页 / 共44页
C专业课程设计学生成绩标准管理系统·.doc_第3页
第3页 / 共44页
C专业课程设计学生成绩标准管理系统·.doc_第4页
第4页 / 共44页
C专业课程设计学生成绩标准管理系统·.doc_第5页
第5页 / 共44页
点击查看更多>>
资源描述

1、武汉工程大学 计算机科学和工程学院综合设计汇报设计名称: 软件基础综合设计 设计题目: 小型学生成绩管理系统 学生学号: 130517 专业班级: 计算机科学和技术01班 学生姓名: 何经纬 学生成绩: 指导老师(职称): 邹君(讲师) 完成时间: .4.7. 5.15 武汉工程大学计算机科学和工程学院 制说明:1、汇报中第一、二、三项由指导老师在综合设计开始前填写并发给每个学生;四、五两项(中英文摘要)由学生在完成综合设计后填写。2、学生成绩由指导老师依据学生设计情况给出各项分值及总评成绩。3、指导老师评语一栏由指导老师就学生在整个综合设计期间表现、设计完成情况、汇报质量及答辩等方面,给出客

2、观、全方面评价。4、全部学生必需参与综合设计答辩步骤。凡不参与答辩者,其成绩一律按不及格处理。答辩小组组员应由2人及以上老师组成。5、汇报正文字数通常应不少于5000字,也可由指导老师依据本门综合设计情况另行要求。6、平时表现成绩低于6分学生,其综合设计成绩按不及格处理。7、此表格式为武汉工程大学计算机科学和工程学院提供基础格式(适适用于学院各类综合设计),各教研室可依据本门综合设计特点及内容做合适调整,并上报学院同意。答辩统计表学生姓名: 何经纬 学号: 班级: 计算机科学和技术01 答辩地点: 计算机大楼8号机房 答辩内容统计:答辩成绩累计分值各项分值评分标准实际得分累计得分备注2510在

3、要求时间内能就所设计内容进行叙述,言简意明,关键突出,论点正确,条理清楚。15在要求时间内能正确、完整、流利地回复老师所提出问题。答辩小组组员(签字): 年 月 日成绩评定表学生姓名: 何经纬 学号: 130517 班级: 计算机科学和技术01 类别累计分值各项分值评分标准实际得分累计得分备注平时表现1010遵守学习纪律,表现良好,主动完成综合设计任务,无旷课、迟到、早退等情况。设计完成情况3020根据要求完成设计内容,方案合理,功效完善,设计工作量饱满,能利用专业知识和技能去发觉和处理实际问题。10在设计过程中展现出了较强学习能力、动手实践能力、团体协作能力和创新意识。汇报质量3510汇报格

4、式规范,表述清楚,章节内容组织合适。符号统一,图表完备,符合规范要求。参考文件数量在5篇以上,格式及引用符合要求。15汇报内容翔实,结构严谨合理。课题背景介绍清楚,综述充足。设计和实现等关键过程完整,叙述具体透彻。能利用所学专业知识对问题加以分析和求解。无剽窃现象。10设计汇报对整个设计过程进行了全方面总结,表现了收获,得出了有价值结论或结果。答辩情况2510在要求时间内能就所设计内容进行叙述,言简意明,关键突出,论点正确,条理清楚。15在要求时间内能正确、完整、流利地回复老师所提出问题。总评成绩指导老师评语指导老师: (签字) 日期: 年 月 日一、综合设计目标、条件、任务和内容要求:软件基

5、础综合设计是计算机科学和技术(计算机工程方向)专业学生进行第一次纯软件方面综合设计,本设计关键考察学生能够从实际问题出发设计和选择适宜数据结构;能够熟练利用基础数据结构做工具来处理部分实际问题。综合设计条件:PIV及以上等级CPU计算机,windows xp及以上版本操作系统,Visual studio及以上版本集成开发环境。一个完整小型学生成绩管理系统应完成以下要求:(1) 有10个小学生,每个学生学习数学和语文2门课程,从键盘输入学生学号、姓名及成绩,计算每位学生平均成绩,将数据存入文件stud.dat中。(2) 按以下格式输出链表中大于等于平均成绩学生信息: 学号 姓名 数学 语文 平均

6、成绩(3) 用类来实现本程序,而且用链表实现(4) 可在已经有统计后面追加新学生统计。(5) 可在原链表中删除指定条件(如学号、姓名等)学生统计(6) 能够按学号、姓名查找要修改统计内容。(7)使用多文件编程和菜单操作(8)要求对”运算符进行重载。设计思想:设计一个菜单,经过菜单选择实现对应操作,使用链表存放输入原始信息。这么做好处是能够随时增加内容和删除内容。为学生设计一个结构及使用这个结构作为数据组员学生类,单独设计完成这个文件读写组员函数。使用学生结构,产生一个静态结构数组作为学生信息简表存放器,由它们和文件建立读写管理。需要显示它们时,先将文件读入内存,然后再显示。需要显示大于等于平均

7、成绩学生信息时,则直接从内存链表中筛选。二、进度安排:4周 (3月23日3月27日):征题和老师开题;5周:老师审题、学生选题;指导老师任务划分、指导老师讲解解题方法;6,7,8,9,11周(周2晚,周五下午):上机编制程序、调试和老师指导;11周周五(5月15日):答辩。三、应搜集资料及关键参考文件:1. 李春葆 数据结构教程(第4版).北京:清华大学出版社,2. 张俊,张彦铎. C+面向对象程序设计(第二版). 北京:清华大学出版社.3. 谭火彬.UML 2 面向对象分析和设计. 北京:清华大学出版社.54. 张俊. C+面向对象程序设计习题和试验指导(第二版). 北京:清华大学出版社.5

8、.周启生 姬涛 .计算机程序设计基础.北京:科学出版社四、摘要: 伴随科学技术发展,计算机在工业方面和日常生活中发挥着越来越关键作用。在学校日常工作中,学校要处理大量学生数据,假如人工处理这些数据将会是一项繁琐工作。但计算机凭借其强大计算能力使它能够在很短时间完成大量工作,用计算机对学生信息进行管理无疑是一个不错选择。 学生信息管理系统能方便快捷、正确处理学生信息,这里简易地介绍了该系统实现过程,和功效。该系统实现过程大约能够分为三个步骤:系统分析、功效模块设计、系统调试和测试,该系统关键功效有学生信息添加、删除、插入、查询、修改、将学生信息保留到磁盘中等。学生信息管理系统这些功效关键是由链表

9、和文件来实现,所以说该系统关键即为链表和文件。在实现学生信息管理系统全部功效同时还要注意良好人机交互体验,所以菜单界面优化是很关键。一个简练明了菜单加上完善功效,才能使学生信息管理系统有更多实际作用。关键词:学生信息管理系统;链表;结构体;类;文件五、Abstract:With the development of science and technology, the computer industry continuously made new research achievements, the computer plays a more and more important role

10、in industry and daily life. In the schools daily work, schools need to handle a large number of student data, if these data are dealt with people, it would be a tedious work. But with the development of computer science and technology more and more mature, by virtue of its powerful computing capacit

11、y, the application of computer is more and more widely in life, Use the computer to manage student information is a good choice. Student information management system can quickly, accurately handle student information quickly and accurately, it simply introduces the implementation process of the sys

12、tem, and function. The realization process of the system can be divided into three steps: system analysis, system function module design, and test, the main function of this system are adding, deleting, inserting, querying and saving student information. These features of the student information man

13、agement system is mainly implemented by the linked list and the file, so the core of the system is the linked list and the file. We achieve all the function of student information management system and at the same time we must pay attention to the good interactive experience, so menu interface optim

14、ization is very important. A simple menu with perfect function can make the student information management system has more practical effect.Keywords: students information management system; chain; structure; class files目 录摘 要IAbstractII第一章 课题背景11.1 课题概述11.2 关键问题及技术要求11.3 关键工作内容21.4 汇报布局3第二章 需求和设计分析4

15、2.1 需求分析42.2 功效分析42.3 结构分析5第三章 具体设计83.1 系统具体设计8第四章 结果及分析184.1 设计结果184.2 输入异常测试用例234.3 设计分析24总 结25致 谢26参考文件27摘 要 伴随科学技术发展,计算机在工业方面和日常生活中发挥着越来越关键作用。在学校日常工作中,学校要处理大量学生数据,假如人工处理这些数据将会是一项繁琐工作。但计算机凭借其强大计算能力使它能够在很短时间完成大量工作,用计算机对学生信息进行管理无疑是一个不错选择。 学生信息管理系统能方便快捷、正确处理学生信息,这里简易地介绍了该系统实现过程,和功效。该系统实现过程大约能够分为三个步骤

16、:系统分析、功效模块设计、系统调试和测试,该系统关键功效有学生信息添加、删除、插入、查询、修改、将学生信息保留到磁盘中等。学生信息管理系统这些功效关键是由链表和文件来实现,所以说该系统关键即为链表和文件。在实现学生信息管理系统全部功效同时还要注意良好人机交互体验,所以菜单界面优化是很关键。一个简练明了菜单加上完善功效,才能使学生信息管理系统有更多实际作用。关键词:学生信息管理系统;链表;结构体;类;文件AbstractWith the development of science and technology, the computer industry continuously made n

17、ew research achievements, the computer plays a more and more important role in industry and daily life. In the schools daily work, schools need to handle a large number of student data, if these data are dealt with people, it would be a tedious work. But with the development of computer science and

18、technology more and more mature, by virtue of its powerful computing capacity, the application of computer is more and more widely in life, Use the computer to manage student information is a good choice. Student information management system can quickly, accurately handle student information quickl

19、y and accurately, it simply introduces the implementation process of the system, and function. The realization process of the system can be divided into three steps: system analysis, system function module design, and test, the main function of this system are adding, deleting, inserting, querying a

20、nd saving student information. These features of the student information management system is mainly implemented by the linked list and the file, so the core of the system is the linked list and the file. We achieve all the function of student information management system and at the same time we mu

21、st pay attention to the good interactive experience, so menu interface optimization is very important. A simple menu with perfect function can make the student information management system has more practical effect.Keywords: student information management system; chain; structure; class files 第一章 课

22、题背景1.1 课题概述(1)课题背景多年以来,学校对本校学生信息管理全部还沿用传统方法,在在这种管理模式下,用人工统计学生信息效率低、保密性差,人力资源也存在着极大浪费。另外,伴随时间推移,资料库将会产生大量文件和数据堆积现象,这种现象对于数据查找、更新和维护全部会带来很大阻碍。伴随现代素质教育提升以立即代快速发展,靠人工来管理学生信息已经不再适适用于现代教育管理模式。在科技快速发展,计算机越来越普及信息化时代到来,为了使学校传统管理方法和办学水平全部能应付这种极大挑战,需要对传统教育方法提出新提议和要求。而步入了新世纪,从世界各国教育科学化进程看,多种竞争显得异常猛烈,而且不仅仅是在教育基础

23、信息建设和相关资源建设上,又或说是在方法普及程度上,我们和其发达国家存在较大差距。步入二十一世纪我们,假如还是不能很好地利用网络和科技,又或是不会用较少成原来推进教育信息化、科学化发展,那么像这么没有明确发展方向,一定会偏离信息化、科技化轨道,从而就可能阻碍社会科技化、信息化进步,甚至于整个国家科技化发展。所以刷哦,怎样实施教育信息化管理已经成了一个十分关键且必需立即处理问题,而怎样有效管理学生信息,是实现教育信息化管理关键。和传统管理方法相比,开发出来学生信息管理系统优势就显得比较明心。比如动态管理全部学生基础信息;经过网络,老师能够在任何时间,任何地点查看学生基础信息。实现西你想化管理一个

24、最关键特点就是快速正确查找信息,而且在输入结束后立即给出正确查询结果。(2)课题目标本设计关键目标是培养我们从实际问题出发设计和选择适宜数据结构能力,使我们能够熟练利用基础数据结构做工具来处理部分实际问题。(3)课题意义学校能够经过程序发挥计算机运算速度快存放容量大优点对大量学生信息进行管理,从而提升人职员作效率。1.2 关键问题及技术要求(1)应处理关键问题文件操作把内存中数据保留到磁盘文件过程中,数据从内存流出,所以是文件输出操作,应该建立文件输出流类ofstream相关联文件,同时指定为ios:out打开模式文件。把磁盘文件内容读取到内存中,数据向内存流入,所以是文件输入操作,应该建立文

25、件输入流类ifstream相关联文件,同时指定为ios:in打开模式文件。若只向文件中写入数据,则应该选择文件输出流类ofstream;若只从文件中读取数据,则应该选择文件输入流类ifstream。ios:in 打开文件,从文件中提取数据。ios:out 打开文件,向文件中写入数据1。文件打开模式如表1-1所表示:表1-1 文件打开模式打开模式十六进制值含义及功效ios:in0x01打开文件,只从文件中提取数均ios:out0x02打开文件,只为向文件中写入数据ios:ate0x04打开文件,并立即将文件指针定在文件尾ios:app0x08每次打开文件,总是定在文件尾,然后把文件内容追加到文件

26、尾ios:trunc0x10打开文件,同事清空已经有内容ios:binary0x20打开文件,并以二进制模式进行I/O操作ios:nocreat0x40若文件不存在,则返回失败ios:noreplace0x80若文件已存在,则返回失败单链表建立:bahead 尾插法建立单链表,图1.1所表示:图1.1 尾插法建立单链表示意图(2)应达成技术要求能完成学生信息录入、修改、删除、输出、查询等功效2;采取单链表存放结构实现;学生信息以外部文件方法保留。1.3 关键工作内容(1) 分析功效需求,构思程序大约结构。(2) 将程序模块化设计,分部实现全部功效,由易到难。(3) 处理文件操作、链表等难点问题

27、。1.4 汇报布局第一章 为课题背景,关键介绍了小型学生信息管理系统课题背景,目标和意义,和做设计之前必需有知识贮备和大约工作步骤。第二章 为需求分析和设计分析,关键介绍了中国外已经投入使用基于不一样开发方法学生信息管理系和本程序开发方法,以该改程序大致结构和部分函数功效。第三章 为具体设计,关键对程序各个函数进行了细化设计。第四章 为结果及分析,本章关键对程序各个功效进行了测试和部分异常情况测试。第二章 需求和设计分析2.1 需求分析学校工作总体计划由教务人员完成对运行教务处所需基础数据维护,包含这些信息增加、修改、删除等。因为通常学校学生数量假如靠人过完成这些操作话将会是一件繁重工作,在这

28、个时候假如采取学生信息管理系统来维护这些数据话,这件工作将会显得尤为轻松。现在中国外有很多个类学生信息管理系统,有基于ASP.NET学生信息管理系统,有基于MFC和ACCESS数据库学生信息管理系统,有基于Visual C+学生信息管理系统,在这里,我设计学生管理系统就是基于Visual C+。2.2 功效分析学生信息管理系统其功效包含:(1)录入函数Add():将学生信息插入到链表中; 学生信息录入功效关键由单链表构建来实现,将全部学生信息依次存入单链表中,最终将数据保留至磁盘(硬盘)中。 学生信息录入过程中可能会出现姓名反复情况,姓名反复还不能判定该学生信息是否反复录入,所以学号是判别学生

29、信息是否反复录入标准;在学生成绩录入过程中还可能会出现录入成绩不符合标准,比如录入成绩低于0分高于100分等。(2)修改函数Modify():修改指定学生信息;依据设计要求,修改学生信息需事先找到那个要被修改学生信息,而且是唯一一个,因为可能会出现重名情况,所以只有当姓名和学号相对应时该学生信息才能被修改。(3)删除函数Delete():删除指定学生信息; 删除学生信息和修改学生信息有点类似,全部需要找到唯一确定学生信息,删除学生信息大致原理图2-1所表示:其中q=p-next,p-next=q-next3。图2.1 删除学生信息原理示意图(4)输出函数Show():显示全部学生信息; 显示学

30、生信息徐和谊模块较为简单,简单走指针,从头节点走到尾节点。(5)查询函数Search():查询指定学生信息; 依据设计要求,查询学生信息需要有两个入口,根据姓名查找或根据学号查找,该部分算法和修改学生信息,删除学生信息函数算法前半部分相同,全部是做匹配工作。(6)读取数据函数Read():从外部文件读取学生信息; 从硬盘中文件读取学生信息需要应用到ifstream(数据向内存流入,是文件输出操作)相关联文件,同时还要结合链表以实现读取多个学生信息功效。(7)保留数据函数Save():将数据保留到外部文件中;将学生信息保留到银盘中文件里需要用到输出流类ofstream(数据从内存流出,是文件输入

31、操作)相关联文件,配合链表(尾插法)实现学生信息保留。(8)平均成绩函数AverageTotle():取得平均成绩高于全班平均成绩学生信息; 要实现该功效首先要将全班全部些人成绩进行累加,并求出全班学生平均成绩, 然后将已经有学生成绩依次和全班平均值比较,平均成绩大于或等于全班平均值学生即为满足要求学生,输出她们信息。(9) 菜单函数Menu():快捷入口。经过switch-case语句即可实现该部分功效4。2.3 结构分析经过对学生信息管理系统功效分析,能够大约画出系统结构图,图2.2所表示。学生信息管理系统优异学生信息读取学生信息保存学生信息显示学生信息删除学生信息修改学生信息录入学生信息

32、图2.2 学生信息管理系统总体结构设计学生信息管理系统全部功效能够由两个类实现,Student类,Function类5。Student类大致结构图2.3所表示:StudentOfile(ofstream &of)Infile(ifstream &f)Out()Set(char *name, double no, Class score)GetName()GetNo()GetAverage()图2.3 Student类大致结构Infile(ifstream &f)函数:把磁盘文件内容读取到内存中 。Ofile(ofstream &of)函数:把内存中数据保留到磁盘文件。Out()函数:输出函数。

33、Function类大致结构图2.4所表示:FunctionAverageTotle()Show()Modify()Delete()Search()Add()Menu()图2.4 Function类大致结构图第三章 具体设计3.1 系统具体设计(1)学生信息录入模块学生信息包含:姓名、学号、语文成绩、数学成绩、平均成绩,录入模块步骤图图3.1所表示:开始录入输入学生信息保留学生信息结束图3.1 录入模块步骤图该模块代码以下:Add() char name20;double no;Class score;char choose;Student *f1, *p, *f2;system(cls);f1

34、 = StudentHead;f2 = StudentHead-next;while (f1-next)f1 = f1-next;dop = new Student;cout 请输入您要添加学生信息: endl;cout name;cout no;f2 = StudentHead;while (f2)if (f2-GetNo()=no)cout 该学生已存在,请确定学号!nn;cout no;break;f2 = f2-next;A:;cout score.Chinese;if(score.Chinese100|score.Chinese0)cout成绩输入有误,请重新输入!endl;goto

35、 A;B:;cout score.Math;if(score.Math100|score.Math0)cout成绩输入有误,请重新输入!Set(name, no, score);f1-next = p;p-next = NULL;f1 = f1-next;cout 是否继续输入信息?(YN) choose; while (choose = y | choose = Y);Save();cout 按1返回主菜单 choose;while (choose != 1)cout 按1返回主菜单 choose;Menu();(2) 学生信息删除模块删除学生信息删除过程已经在第二章做了介绍,在此不再赘述。

36、当选择删除功效时,首先输入要删除同学姓名,然后输入要删除同学学号,假如该同学存在而且姓名和学号匹配,则进行删除操作,不然返回失败。该模块关键就是走指针6。其步骤图如3.2所表示:开始删除输入姓名输入学号姓名学号一致N Y实施删除返回主菜单图3.2 删除学生信息模块步骤图(3)学生信息修改模块该模块实现过程和删除学生信息有很多类似地方。首先查找和要修改数据相匹配信息,若没有则返回失败;不然把对应信息输出,然后重新输入新数据并保留到单链表7。关键算法就是比较简单走指针算法,代码以下:Modify() char choose, name20;Student *temp, *p;double no;C

37、lass score;system(cls);temp = p = StudentHead;cout name;coutno;while (temp)if (strcmp(temp-GetName(), name) = 0 & temp-GetNo() = no)cout Out();cout请输入新信息:endl;cout name;cout no;cout score.Chinese;cout score.Math;temp-Set(name, no, score);break;temp = temp-next;Save();cout 修改成功! endl;cout 1.返回主菜单n2.继

38、续修改 choose;while (choose != 1&choose != 2)cout 1.返回主菜单n2.继续修改 choose;if (choose = 1)Menu();else if (choose = 2)Modify();(4) 学生信息查询模块该模块用匹配算法在删除学生信息和修改学生信息模块中全部用到过,走指针匹配算法8。按姓名和学号查找学生信息步骤图3.3所表示:按学号或姓名查找输入相关信息判定YN该学生不存在输出该学生信息结束图3.3 查询模块步骤图(5)学生信息显示模块从单链表表头遍历整个单链表,直到走到尾节点,依次将单链表中每个节点全部信息输出9,该算法在查询、删除

39、等模块反复用到,较为简单,算法可参考查询、删除、等模块算法。(6)学生信息读取模块学生信息读取模块需要熟练地应用输入流类ifstream(数据向内存流入)相关联文件,并配合链表(尾插法)实现学生信息读取,该模块代码以下:void Student:Infile(ifstream &f)f Name No Score.Chinese Score.Math Average; / 把磁盘文件内容读取到内存中 void Function:Read() /读取学生信息函数Student *p, *p2;p = StudentHead;ifstream is(Student.txt, ios:in);if (!is)ofstream os(Student.txt, ios:out);os.close();return;while (!is.eof()p2 = new Student;p2-Infile(is); /把磁盘文件内容读取到内存中p-next = p2;p2-next = NULL;p = p-next;(7)学生信息保留模块学生信息保留模块需要熟练地应用输出流类ofstream(数据从内存流出)相关联文件,并配合链表(尾插法)实现学生信息保留,该部分代码以下:void Student:Ofile(ofstream &of)of 姓名: Name

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
百度文库年卡

猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 学术论文 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服