资源预览内容
第1页 / 共46页
第2页 / 共46页
第3页 / 共46页
亲,该文档总共46页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
青岛理工大学C+面向对象课程设计报告面向对象课程设计报告院(系):院(系): 专业:专业: 学学生生姓姓名名: 班级班级 学号:学号: 题目题目: 课程设计选题管理系统设计 起迄日期:起迄日期: 设计地点:设计地点: 指指 导导 教教 师:师: 完成日期: 年月日0C+C+面向对象课程设计面向对象课程设计任务书任务书一、课程设计目的一、课程设计目的与要求与要求1课程设计目的课程设计目的面向对象程序设计作为一门软件设计的课程,具有极强的实践性,必须使学生具备灵 活应用理论知识的能力及面向对象程序设计技能。所以在C+面向对象程序设计课程 学习完成后,安排课程设计教学环节。通过课程设计,使学生实际掌握面向对象的程序设计方法,了解 C+面向对象的设计 方法与技巧,有效地、深刻地理解课程内容,体会理论、方法和设计原则;培养学生分析 实际问题和解决问题的能力,使学生具备使用面向对象程序设计开发工具设计实际系统的 能力。2课程设计要求课程设计要求结构化程序设计使用的是功能抽象,面向对象程序设计不仅能进行功能抽象,而且能 进行数据抽象。 “对象”实际上是功能抽象和数据抽象的统一。C+语言的“对象”是“类” 的实例,程序设计的基础是设计类,所以类的有关概念都是重点,尤其要抓住抽象、封装、 继承和多态性等要素。 面向对象程序设计的核心是类层次的设计。而具体类的设计的重点是如何选择数据成 员和成员函数。根据数据成员和成员函数的特点,结合具体问题设计合适的类。成员函数 设计中的难点是选择函数类型及其参数传递方式。 开发系统离不开设计平台,学生应在掌握面向对象程序设计基础上,熟悉并能熟练使 用面向对象程序设计开发平台,结合相关理论知识,进行相应系统开发。利用所学的面向对象及 C+编程知识和技巧,通过布置具有一定难度的程序设计题目, 并且要求学生独立完成所布置题目,在分析设计过程中,要求学生养成良好的编程习惯, 学会分析简单的实际问题,并能利用所学的知识建立系统的逻辑结构,学会程序调试方法 和技巧。根据系统的功能要求,要求学生在教师的指导下逐步完成应用程序的设计。 (1)实行“以学生个别化学习为主,教师辅导为辅”的教学模式。 (2)了解面向对象的基本概念和使用面向对象技术进行程序设计的基本思想。 (3)能比较熟练地用 C+语言进行一般面向对象程序设计。 (4)初步掌握面向对象编程环境 Visual C+6.0 的使用。 (5)该课程实践性较强,需要学生多作练习,要求辅导教师有比较熟练的编程经验, 并对 Visual C+环境比较熟悉。 (6)课程设计需要提交的内容:1)源程序; 2)执行程序; 3)设计文档; 4)测试记录。 其中 1)、2)和 3)三项刻在一张光盘上。1二、课程设计二、课程设计内容内容题目题目 13“13“课程设计选题管理系统设计课程设计选题管理系统设计”1 1、问题描述、问题描述 课程设计题目包括:编号、名称、关键词、实现技术、人员数(由几个人来完成)等 信息。 学生信息包括:学号、姓名、性别、年龄、班级、专业等信息。 2、功能要求、功能要求 (1)添加功能:程序能够添加学生的记录和课程设计题目记录,提供选择界面供用户 选择所要添加的类别。添加记录时,要求学号和编号要唯一。如果添加了重复记录,则提 示数据添加重复并取消添加。 (2)查询功能:可根据学号、姓名、编号、名称等信息对已添加的学生和课程设计题 目进行查询,如果未找到,给出相应的提示信息,如果找到,则显示相应的记录信息。 (3)显示功能:可显示当前系统中所有学生的信息和课程设计题目信息,每条记录占 据一行。 (4)编辑功能:可根据查询结果对相应的记录进行修改,修改时注意学号的唯一性。 (5)删除功能:主要实现对已添加的学生和课程设计题目记录进行删除。如果当前系 统中没有相应的记录,则提示“记录为空!”并返回操作。 (6)统计功能:能根据多种参数进行统计。能按课程设计题目名称统计出学生选择该 题目的人员的信息。 (7)保存功能:可将当前系统中各类记录存入文件中,存入方式任意。 (8)读取功能:可将保存在文件中的信息读入到当前系统中,供用户进行使用。 3 3、问题的解决方案、问题的解决方案 根据系统功能要求,可以将问题解决分为以下步骤: (1)应用系统分析,建立该系统的功能模块框图以及界面的组织和设计; (2)分析系统中的各个实体及它们之间的关系; (3)根据问题描述,设计系统的类层次; (4)完成类层次中各个类的描述; (5)完成类中各个成员函数的定义; (6)完成系统的应用模块; (7)功能调试; (8)完成系统总结报告。三、课程设计报告三、课程设计报告(1) 不少于 5000 字,可以使用统一的设计说明书稿纸(A4),亦可以自己打印(A4)。注 意要双面打印。(2) 主要内容及装订顺序:封面(统一提供)、目录、正文、参考文献。(3) 正文部分应该包括:需求分析、总体设计、数据库设计(非数据库编程不需要)、程 序模块设计(含功能需求、用户界面设计、程序代码设计与分析、运行结果,每个人可选择 2 个模块进行)、系统使用说明。2(4) 设计报告严禁抄袭,即使是同一小组也不允许雷同,否则按不及格论。(5) 软件要求:最终的软件对问题的描述应正确无误,运行稳定、可靠,界面友好。(6) 每人都需要交一份总结报告。四、时间安排及考核方式四、时间安排及考核方式1 1时间安排时间安排设计时间为第 1718 两周(6.297.10) ,7 月 8 日开始可向指导教师提交报告、程 序,并对设计内容进行答辩。 (1)分析设计准备阶段(6.297.1) (2)编程调试阶段(7.27.7) (3)总结报告和书写说明书阶段(7.87.9) (4)考核阶段(7.10)2 2考核标准考核标准 采用答辩和设计报告相结合的考核方法对课程设计效果进行考核。其中课程设计报告 (不少于 5000 字)(占总成绩 40%) ,答辩(占总成绩 60%) 。 (1)程序设计的可用性,实用性,通用性,可扩充性( 40% ) 。 (2)学生的动手能力,创新能力( 20% ) 。 (3)总结报告( 40% ) :包括系统设计要求,设计思路,系统功能模块图,系统流程 图,类的层次图(包括类成员列表) ,调试过程,关键程序代码,总结,参考书目。不符合 以上要求者,则本次设计以不及格记。 主要考核学生的科学研发的基本知识和基本技能。考核共分五个等级,标准如下: 优秀:论述逻辑严谨,行文流畅,方案合理,创新点突出,完成题目指标。 良好:论述严谨,方案得当,特色鲜明,完成课题要求指标。 中等:论述合理,方案可行,完成题目要求。 及格:论述、行文不够严谨,基本完成题目要求。 不及格:论述、行文杂乱,没有完成题目要求。五、主要参考文献五、主要参考文献1郑莉C+语言程序设计(第 3 版) 北京:清华大学出版社,2005.7 2钱能C+程序设计教程(第 2 版) 北京:清华大学出版社,2005.8 3. 黄维通. Visual C+面向对象与可视化程序设计(第 2 版).北京:清华大学出版社,2003.12 4. 刘路放. Visual C+与面向对象程序设计教程(第二版). 北京:高等教育出版社,2007.8 5. 潘爱民. COM 原理与应用.北京:清华大学出版社,1999.113一、需求分析一、需求分析1.选做此课题或项的目的选做此课题或项的目的在当前大学课程选课系统中,往往需要对学生进行编号以便于管理和统计工作。所以 需要一套适合自身特点的管理系统能够使课程管理变得更有效率。所以本系统的目的在于 可以很好的管理学生的选课信息,使得系统的功能和用途更加的全面和实用,这样将选课 管理的多个功能合在一起可以避免用户使用起来的麻烦,使得可以更好的方便于使用者。 本课程设计的目的就是通过一次集中的强化训练,能及时巩固已学知识,补充未学但 又必要的内容。进行课程设计目的在于加深对程序设计基础理论和基本知识的理解,促进 理论与实践的结合,进一步提高程序设计能力。具体目的如下: (1)更深入地理解和掌握该课程中的有关基本概念,程序设计思想和方法。 (2)培养综合运用所学知识独立完成课程设计的能力。 (3)可以将自己所学的知识运用在系统的实现。 (4)能够熟练掌握 C+语言的基本知识和技能。 (5)基本掌握面向对象程序设计的基本思路和方法。 (6)能够运用面向对象(类和对象)的机制来实现系统功能。 (7)能够建立清晰的类与函数之间的关系,学会对函数调用的熟练使用。 (8)能够利用所学的基本知识和技能,解决简单的面向对象程序设计问题。 2.程序所实现的功能程序所实现的功能(1)添加信息功能:程序能够添加学生的记录和课程设计题目记录,提供选择界面供 用户选择所要添加的类别(如果添加了重复记录,则提示数据添加重复并取消添加) 。 (2)查询信息功能:可根据学号、姓名、编号、名称等信息对已添加的学生和课程设 计题目进行查询,如果未找到,给出相应的提示信息,如果找到,则显示相应的记录信息。(3)修改信息功能:可根据查询结果对相应的记录进行修改。 (4)删除信息功能:实现对已添加的学生和课程设计题目记录进行删除(如果当前系 统中没有相应的记录,则提示“记录为空!”并返回操作) 。 (5)统计信息功能:能根据多种参数进行统计。能按课程设计题目名称统计出学生选 择该题目的人员的信息。 (6)显示信息功能:可显示当前系统中所有学生的信息和课程设计题目信息。 (7)保存信息功能:可将当前系统中各类记录存入文件中,存入方式任意。 (8)读取信息功能:可将保存在文件中的信息读入到当前系统中,供用户进行使用。 (9)退出系统功能:可以通过选择此功能退出课程设计选题管理系统。4二、内容设计二、内容设计1.根据所选题目,给出模块图根据所选题目,给出模块图图 2.1 系统模块图52.画出主程序及其主要模块的流程图画出主程序及其主要模块的流程图图 2.2 添加信息流程图图 2.3 查询信息流程图6图 2.4 按学生学号查询流程图图 2.5 按学生姓名查询流程图7图 2.6 按题目编号查询流程图图 2.7 按题目名称查询流程图8图 2.8 修改信息流程图图 2.9 删除信息流程图9图 2.10 统计信息流程图图 2.11 显示信息流程图103.编写程序关键代码编写程序关键代码(1)向文件写入数据,打开文本文档代码 void manage:write(int n) /向文件写入数据,打开文本文档 fstream myfile; myfile.open(“student.txt“,ios:out|ios:binary); /fstream myfile(“student.txt“,ios:out|ios:binary); if(! myfile) coutcount; for(int i = 0; i stui.student_idstui.student_namestui.sexstui.agestui.Classstu i.specialtystui.course_id11stui.course_namestui.keywordstui.technologystui.number; coutstui.student_i
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号