ImageVerifierCode 换一换
格式:DOCX , 页数:31 ,大小:243.03KB ,
资源ID:11914893      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/11914893.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(C++课程设计 27.docx)为本站会员(b****4)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

C++课程设计 27.docx

1、C+课程设计 27大 连 科 技 学 院面向对象程序设计(A)课程设计题 目 仲夏夜学生成绩管理系统 学生姓名 安凯辰专业班级 网络工程08-1 指导教师 王影 刘瑞杰 职 称 高工 讲师 所在单位 信息科学系计算机教研室 教学部主任 王立娟 完成日期 2011年9月9日课程设计报告单学号0801090116姓名安凯辰专业班级网路工程08-1考 核 项 目评分备注1平时工作态度及遵守纪律情况(10分)2掌握基本理论、关键知识、基本技能的程度和阅读参考资料的水平(10分)3独立工作能力、综合运用所学知识分析和解决问题能力及实际工作能力提高的程度(20分)4完成课程设计说明书及软件的情况与水平(小

2、组分工情况、规范性、整洁清楚、叙述完整性、思路清晰程度、工作量及实际运行情况和创新性)(60分)总评成绩综 合 评 定:(优、良、中、及格、不及格) 指导教师签字:2011年9月9日面向对象程序设计(A)课程设计任务书一、课程设计任务及要求:任务:运用C+语言编写“仲夏夜学生成绩管理系统”,实现输入输出学生资料,删除查找学生等九个功能,方便对学生的成绩的管理。在此次课程设计中,使我们加深对C+语言的运用,在实践中学习C+语言,同时锻炼我们的动手能力,增强我们对C+语言的熟练度,增加我们在项目中的经验。要求: (1) 根据软件系统开发的一般原则,完成相应系统的功能设计,完成主要功能模块的程序实现

3、并进行测试训练,给出代码运行结果和相应的设计文档。可以分组进行,但所有学生必须经历整个系统的开发全过程,以便加深对系统开发全过程的认识。(2)提交课程设计报告。(3)指标: 要求完成课程设计报告3000字以上(约二十页);完成所设计的题目,设计题目的语句行数在200行语句以上。二、工作量2周(10个工作日)时间三、计划安排第1个工作日:查找相关资料、书籍,阅读示例文档,选择题目。第2个工作日第3个工作日:设计程序结构、模块图。第4个工作日第9个工作日:完成程序的编码,并且自己调试、测试。穿插进行课程设计报告的撰写。第10个工作日:上交课程设计报告,由教师检查软件测试效果、检查课程设计报告,给出

4、学生成绩。指导教师签字:2011年8月29日目 录1 需求分析 12 概要设计 33 详细设计 53.1输入学生资料模块 53.2输出学生资料模块 53.3按学生姓名进行排列模块 53.4添加学生资料模块 53.5按姓名查找,删除该学生资料模块 53.6查找并显示学生资料模块 53.7按姓名查找,修改学生资料模块 53.8从文件中读入数据模块 53.9储存学生资料并退出系统模块 64 编码 74.1功能 74.2算法思路 74.3代码 75 调试分析 96 测试结果及运行效果 107 系统开发所用到的技术 15课程设计实践总结 16参考文献 17附 录 181 需求分析在一些学校等机构,随着学

5、生数量的不断增加,学生的信息不断增多,人工管理信息的难度也越来越大。而且效率也是很低的。所以如何自动高效地管理信息是这些年来许多人所研究的。随着这些年电脑计算机的速度质的提高,成本的下降,IT互联网大众趋势的发展。我们使用电脑的高效率才处理数据信息成为可能。 学生成绩管理系统的出现,正是管理人员与信息数据,计算机的进入互动时代的体现。友好的人机交互模式,清晰简明的图形界面,高效安全的操作使得我们对成千上万的信息的管理得心应手。1通过C+课程设计,使学生能够将学到的面向对象的设计思想运用在具体的工作和学习中,加深对类和对象的理解,要求学生对生活中许多具体的事物抽象出类,并掌握继承和派生类、基类、

6、虚函数和多态的概念。2通过这次课程设计掌握C+语言程序设计的编程思想,为后续课程打下基础。3培养我实际操作能力和实践能力,为以后的工作打下坚实的基础。对系统进行功能模块分析、控制模块分析正确。系统设计要能完成题目所要求的功能。编程简练,可用,尽可能的使系统的功能更加完善和全面。总体结构我们采取模块化方式进行程序设计,要求程序的功能设计、数据结构设计及整体结构设计合理。也可根据自己对题目的理解增加新的功能模块。系统以菜单界面方式(至少采用文本菜单界面,如能采用图形菜单界面更好)工作,运行界面友好,演示程序以用户和计算机的对话方式进行。每一条记录中,包括一个学生的姓名、班级、学号、各科成绩。同时,

7、应具备以下功能:1输入功能:一次可以完成自定义学生人数的学生信息记录的输入。2输出功能:显示学生资料。3排序功能:以英语课程的分数为依据对学生信息进行排序。4添加功能:添加指定的学生信息。5删除功能:对指定学生的信息进行删除。6查询功能:选择某种方式并输入该信息查询符合条件的学生信息。7修改功能:对指定学生的信息进行修改。8读入功能:从文件中读入学生数据。9退出主菜单。成功登陆系统以后,出现成绩管理界面,系统初始化,可对学生成绩进行增加、删除、查询、修改、统计,进入相应界面进行成绩管理,退出系统自动保存本次操作内容,保存信息。主要功能用来对学生的信息进行收集和输入。在学生信息保存在系统中,成绩

8、录入需要输入学生资料,比如姓名,班级手机号码,住宅电话等。在准确输入学生资料后,就可以对该学生的各科信息进行录入。该学生各类信息输入成功后,系统会提示是否继续进行操作,之后系统返回到主菜单。系统测试是管理信息系统的开发周期中的一个十分重要环节。尽管在系统开发周期的各个阶段均采取了严格的技术审查,但依然难免会留下错误,如果没有在投入运行前的系统测试阶段被发现并纠正,问题迟早会在运行中暴露出来,到那时要纠正错误将会付出更大的代价。对已经存储的信息进行查询,而客户的具体需求多样,为了给客户营造更多的便利,可以将软件的查询细分为按整体进行查询模糊查询和精确查询和整体查询,模糊查询允许用户用较为模糊的查

9、询条件,比如信息的姓来进行查询。实现了满足用户需求的多样化。对已经存储的信息进行查询,而客户的具体需求多样,为了给客户营造更多的便利,可以将软件的查询细分为按整体进行查询模糊查询和精确查询和整体查询,整体查询允许用户用整体的查询条件,比如信息的姓来进行查询。实现了满足用户需求的多样化。随着学校的普及和人们文化水平的提高,高效的教学管理系统越来越广泛应用于各类信息化学校。学生学籍管理系统要求实用性强、使用方便、效率高和安全可靠等特点。2 概要设计“仲夏夜学生成绩管理系统”包括九个模块:输入学生资料,输出学生资料,学生姓名按顺序排列,添加学生资料,按姓名查找,删除该学生资料,查找并显示学生资料,按

10、姓名查找,修改该学生资料,从文件中读入数据,储存学生资料并退出系统。这九个模块既相互联系又相互独立。设计目的:巩固和加深学生对高级语言程序设计课程的基本知识的理解和掌握,掌握java语言编程和程序调试的基本技能,利用java语言进行基本的软件设计,提高运用java语言解决实际问题的能力。内容要求实现学生成绩的管理(增、删、改、查询、持久化、成绩排序、成绩统计等功能),在文件中增加、删除、学生信息,根据学号查询、修改学生信息,统计功能求每个人的总分并按从高到低排序,通过这些操作对文件中的信息保存。本系统根据学生成绩管理的需要,而建立一个“仲夏夜学生成绩管理系统”,以方便对成绩的各项管理操作。本系

11、统能对成绩进行输入和输出;能按姓名对学生进行排序,并显示学生资料、成绩等,不过得以系统输入学生资料、成绩为前提;能添加学生成绩资料;能根据学生的姓名来查询该学生的成绩资料,并修改或是删除该学生信息;能够从文件中读取学生信息,并且添加到系统中;能把对系统所进行的操作进行保存,以及时更新系统中的数据。总体结构我们采取模块化方式进行程序设计,要求程序的功能设计、数据结构设计及整体结构设计合理。通过C+课程设计,使学生能够将学到的面向对象的设计思想运用在具体的工作和学习中,加深对类和对象的理解,要求学生对生活中许多具体的事物抽象出类,并掌握继承和派生类、基类、虚函数和多态的概念。系统设计要能完成题目所

12、要求的功能,通过这次课程设计掌握C+语言程序设计的编程思想,为后续课程打下基础。运用C+中基本的输入流和输出流实现数据的输入,保存在类中。根据软件系统开发的一般原则,完成相应系统的功能设计,完成主要功能模块的程序实现并进行测试训练,给出代码运行结果和相应的设计文档。可以分组进行。利用for循环和if函数,只有当你输入的姓名与电话薄中已存姓名一致(利用strcmp函数比较2个字符串),就可以进行删除,否则继续循环直到输对为止。利用for循环和对象成员中的比较来显示录入的所有信息。利用strcmp函数比较2个字符串,只有当你输入的姓名与电话薄中已存姓名一致才能进行修改操作,否则系统会报错。在先前输

13、入分类时进行操作,利用strcmp函数看你输入的分类与增加信息时的是否相同,相同则显示那个分类中的信息,不一致会出现“查无此人”不需要再进行通信录处理便可退出,这结合一个while和else if语句就能做好。运用微软公司开发的一个IDE(集成开发环境)VC+6.0的运行平台,面向对象程序C+语言和数据结构知识。VC+6.0是Windows平台上的c+编程环境,使用c+语言编写运行程序实现理想的菜单界面。图2-1系统总体框架图2-2 Student类类图3 详细设计3.1输入学生资料模块主要功能用来对学生的成绩进行收集和输入。在学生信息保存在系统中的前提下,成绩录入需要输入学生资料,比如班级,

14、学号,姓名。在准确输入学生资料后,就可以对该学生的各科成绩进行录入。该学生各科成绩输入成功后,系统会提示是否继续进行操作,如果想继续输入学生成绩就输入y,不想再输入学生成绩的话就输入n,再输入n之后,系统返回到主菜单。3.2输出学生资料模块主要功能用来对学生的成绩进行输出。在系统已经录入了学生资料成绩的前提下,使用该功能可以显示所有学生的信息,资料等等。具体包括学生的班级,学号,姓名和各科成绩。在查看学生的资料,成绩各方面的信息后,按任意键就可以返回到主菜单。3.3按学生姓名进行排列模块主要功能是用来对学生的资料按姓名进行排序。在系统保存学生资料,成绩的前提下,使用此功能可以对学生的资料按姓名

15、进行排序,这样就方便查找姓氏相同或是相近的同学的资料。3.4添加学生资料模块 主要功能是用来添加学生资料,成绩。如果系统有保存学生资料的情况下,想录入学生成绩的话,就不用添加学生资料这模块。如果系统没有保存该学生信息的话,就要使用此模块,在成功添加学生资料后,就可以对该学生进行其他的操作。3.5按姓名查找,删除该学生资料模块主要功能是用来删除学生资料。在系统保存学生资料的前提下,想删除某学生的资料,可以输入学生姓名,系统查找该学生资料后,就可以删除了。由于学生辍学,毕业等原因,及时对系统进行更新,删除一些没用的信息,可以使系统更加优化。3.6查找并显示学生资料模块主要功能是用来查找学生资料。在

16、系统保存了某学生资料的前提下,想要查找该学生资料,可以输入该学生姓名,这样系统就会显示该学生资料和各科成绩等信息。3.7按姓名查找,修改学生资料模块主要功能是用来修改学生资料。在系统保存了某学生资料的前提下,想要查找该学生资料,可以输入该学生姓名,系统就会显示该学生资料和各科成绩等信息,这样就可以修改该学生的资料,成绩等信息。3.8从文件中读入数据模块主要功能是用来从文件中读入学生数据。由于一些资料可以用Word文档或Excel表格输入,故在此模块中增加了导入数据的功能。这样就方便很多,不用把学生资料一个一个添加,节省了很多时间精力。3.9储存学生资料并退出系统模块主要功能是用来储存学生资料。

17、在对系统进行一系列操作,比如添加、删除、修改学生资料后,对系统的最新操作进行保存,及时更新系统,方便下一次的操作。 表3-1 Student类说明表名称属性说明num数据成员说明学生学号cla数据成员说明学生班级name数据成员说明学生名字byyl数据成员说明学生数据结构成绩jsjzc数据成员说明学生离散数学成绩sjk数据成员说明学生大学物理成绩jsjyy数据成员说明学生大学英语成绩Jssl数据成员说明学生模拟电路成绩4 编码4.1功能定义菜单函数,通过输出函数显示系统功能。利用switch语句实现多分支选择结构。4.2算法思路switch语句的执行流程是:首先计算switch后面圆括号中表达

18、式的值,然后用此值依次与各个case的常量表达式比较,若圆括号中表达式的值与某个case后面的常量表达式的值相等,就执行此case后面的语句,执行后遇break语句就退出switch语句。4.3代码void main() /主函数调用。 int n=0; for(;) switch(menu() case 1: coutsetw(15) 输入学生资料endl; n=Input(stu,n); break; case 2: coutsetw(15) 输出所有学生资料endl; Display(stu,n); break; case 3: coutsetw(15) 按姓名排序endl; Sort(

19、stu,n); coutsetw(15) ; system(pause); break; case 4: coutsetw(15) 插入学生资料endl; n=Insert(stu,n); coutsetw(15) ; system(pause); break; case 5: coutsetw(15) 删除学生资料endl; coutsetw(15) 输入他(她)的姓名:; n=Delete(stu,n); coutsetw(15) ; system(pause); break; case 6: coutsetw(15) 查找学生endl; Query(stu,n); coutsetw(15

20、) ; system(pause); break; case 7: coutsetw(15) 修改学生资料endl; coutsetw(15) 输入你要修改的学生的姓名:; n=Xiugai(stu,n); system(pause); break; case 8: coutsetw(15) 从文件中读入数据endl; n=AddfromText(stu,n); break; case 0: coutsetw(15) 将所有资料写入文件endl; WritetoText(stu,n); coutsetw(15) ; system(pause); break; 5 调试分析(1)用户进入系统后,

21、就会看到学生管理系统的主菜单页面。系统总共有九个模块,分别由0到8表示,在主菜单页面只能输入数字0到8,输入其他字符无效,如果用户输入无效字符,系统仍停留在主菜单页面。(2)进入到主菜单页面后,用户可以根据自己的需求选择不同的选项,选择后系统就会进入子系统页面,然后用户按系统的提示操作就行了。在其中包含了用户所要求完成的功能,软件设计师实现的初步设想并最终实现的代码。同时,为用户提供了使用的约束条件、使用手册,方便用户更好的使用本软件。如果软件在使用时出现了问题,不要让其他的非软件设计师来更改我们的代码,这样我们的软件将很难维护,联系我们可以无偿的为用户提供维修服务。如果在长期的使用过程中,有

22、很多的功能需要添加时,可以再联系我们来为用户的软件升级,并不需要很多的经费。使用过程中,建议为我们提供用户的使用情况,以便我们更好的改进软件功能,解决软件中隐藏的一些错误之处。同时可以方便我们的维护和升级使用。灵活性应虑考,也就是可配置(特性:可以通过修改配置文件来选择系统提供的功能;功能是预先做好的)、可维护(设计指标:系统可方便的修改已有的功能,改Bug,Bug:系统的实际运行情况与实际不一致)要考虑性能(资源CPU、内存耗得少,速度快),考虑可伸缩性(性能不变的情况下,系统可支持的并发用户数与机器个数成正比,正态分布),软件要适应用户人数的变化,性能伸缩也有顶点。6 测试结果及运行效果图

23、6-1学生成绩管理系统主菜单页面图6-2为输入学生资料模块图6-3为输出学生资料模块图6-4为添加学生资料模块图6-5为按姓名查找,删除该学生资料模块图6-6为查找并显示学生资料模块图6-7为按姓名查找,修改学生资料模块图6-8为从文件中读入数据模块图6-9为储存学生资料并退出系统模块7 系统开发所用到的技术 本学生成绩管理系统由九个模块组成,每个模块相互联系又相互独立。这个学生成绩管理系统存在着很多不足之处,由于自己本身编程能力的问题,这个系统可以实现的功能非常有限。只能实现学生管理系统最基本的功能,可以进行简单的输入、输出学生资料,查询和修改学生信息,能直接从文件中读入数据,能对系统所作的

24、修改、操作进行保存等。而且在每个模块也有不足的地方,比如在输入学生资料时,对每个信息项没有严格的规定,可以输入任何的字符。同时有些模块还不能实现本应该有的功能,这有待以后努力,争能够实现该有的功能。在21世纪的科技时代,科学技术突飞猛进,计算机已经不仅是在科技上应用,而且在生活中也是同样得到了广泛在应用。如今,不管是小学、初中、高中、甚至是很多大学生的学生成绩管理基本上是靠人工进行管理,但随着时间的变化,学校规模的扩大,有关学生成绩管理工作和所涉及到的数据量越来越大越来越多,大多数学校不得不靠增加人力、物力、财力来进行学生成绩管理。但是人工管理成绩档案具有效率低、查找麻烦、可靠性不高、保密性低

25、等因素。因此开发出一个不仅仅是适用于大中专院校以及其它高校通用的学生成绩管理系统是必要的。开发一个学生成绩管理系统,采用计算机对学生成绩进行管理,进一步提高了办学效益和现代化水平。为广大教师和学生提高工作效率,实现学生成绩信息管理工作流程的系统化、规范化和自动化。现在我国的大中专院校的学生成绩档案管理水平普遍都不是很高,有的还停留在全用纸介质基础上,这种管理方式已不能适应时代的发展,社会的需求,因为它浪费了大量的人力物力,也存在着许多不足的因素。在今天信息时代这种传统的管理方法必然会被计算机为基础的信息管理系统所代替。一个高效的学生成绩管理系统可以存储历届的学生成绩档案,不需要大量的人力,只需

26、要几名专门录入员即可操作系统,节省大量人力,可以迅速查到所需信息、高效、安全,学生在能方便的查看自己的成绩。课程设计实践总结这二周的C+课程设计,时间上说长不长,说短也不短,却让我学到了很多,第一点就是:C+很难,似乎是学不完的,你觉得自己了解一点,是总会发现还有很多自己所不懂的东西,还有很多自己所没探知的领域,很多知识运用到实践中很有一定的难度,看着自己和同学的程序运行结果,突然发现C+真的很神奇,居然能运行出那么漂亮的系统,看着运行结果。在我们上机调试程序的过程中,我遇到了很多的问题,说实话这次课程设计自己没有出多大的力,大部分都是借鉴同学的设计成果,自己设计是总是觉得没有头绪,无从下手。

27、看到同学认真看程序的样子,还有修改程序时的熟练,我很羡慕他,我想,我也要将C+学好,在将来能为我的就业加分。在这次学院给我们安排的课程设计周,总让我们觉的有些为难我们,这样一个复杂困难而又繁琐的作业,似乎弄得我们既没有时间也没有心情复习,我曾一度地抱怨过学院,在完成它之后,我发现我错了,课程设计不仅让我们巩固了所学的知识,还使得我们学习到了更多平时所忽略的,最重要的是,它磨砺了我们,让我们在大学的下一个阶段能更好的成长。参考文献1 郑莉语言程序设计(第3版)北京:清华大学出版社,2005.72 郑莉语言程序设计及实训教程(第3版)北京:清华大学出版社,20063 吴乃陵李海文程序设计实践教程(

28、第2版)高等教育出版社,20064 吴俊良VisualC+课程设计与系统开发实例(第4版)北京:清华大学出版社,2007.85 StanleyBLippman,JoseeLaijoie等C+ primer(中文版).人民邮电出版,20066 李俊 于良耀 班学刚 黄锦春VisualC+6.0 使用教程(第2版)北京:人民邮电出版社,2005附 录#include#include#include#include#include#include#includeusing namespace std;typedef class public: char num10; char cla10; char name20; char byyl10; char jsjzc20; char sjk10; char jsjyy20; char jsdl20;Student;Student stu80;int menu() char c; for(;c8;) system(cls); cout 欢迎使用本学生成绩管理系统!endl; cout编程人员:芦文娇 ; coutendl; cout* 学生成绩管理系统 * endl; coutsetw(32) 1.输入学生资料endl; coutsetw(32) 2.输出学生资料endl; coutsetw(32) 3.按学生姓名进行排列en

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1