面向对象程序设计大作业参考题目及要求教案资料
面向对象程序设计大作业

《面向对象程序设计》期末大作业一、大作业题目二、要求(1)依照学生人数分成原那么上2至3人(少量4人)一组,各小组选择感爱好的题目,也可自拟题目。
(2)解题要求:现面向对象程序设计语言的特点,程序代码很多于400行;利用技术:表现OOP 的抽象、封装、继承、多态等4种关键技术中的两种或多种;程序结构良好,没有明显错误;依照大作业格式,在课程终止最后两周(1六、17周)上交电子稿。
(3)最终提交。
●大作业报告依照原有的系统设计,编码时期的工作,整理书写实验报告,内容包括:①系统说明②实验分析与结论③收成与体会④附程序代码●最后提交材料:①大作业报告(打印稿和电子稿)②源程序代码(CPP文件),执行文件(EXE)③小组内分工说明(人员名单(不超过4人)、学号、角色分工)三、说明假设两人和多人程序大体相同或撰写的报告大体相同的情形下,经认真比较查证属彼此剽窃的,剽窃者和被剽窃者均按“0”分计。
大作业报告样式如下:(1) 大作业的页面设置为上、下、左、右页边距都为厘米,格式段落中行距为固定值20磅。
(2) 中文字体为宋体小四号,英文字体为Times New Roman小四。
补充说明:关于大作业中的程序、类或函数必然要有详细的注释,如下例所示。
关于类包括:类的成员变量说明,类的成员函数说明,功能,基类、继承类、实现进程等等。
/********************************************************************类名:私有成员:公有成员:功能:作为下面要概念派生类的基类实现步骤:(1)概念类名(2)声明私有成员(3)声明必要的函数作为公有成员,其中狗狗找函数用来分派存储空间,对私有对象进行初始化(4)对类进行封装/********************************************************************关于函数包括:先对函数及各参数进行说明,函数功能说明,实现原理及步骤说明,函数中的关键部位也需要进行说明。
《面向对象程序设计》大作业

《面向对象程序设计》大作业项目名称基于C#的一款扫雷游戏班级7B1551组员李豪雄曹启李宁一、开发环境开发环境:vs2010开发语言:C#二、系统功能设计1.创建项目功能实现创建项目,找图片素材2.界面设计介绍关于扫雷游戏界面的设计提出希望在对应级别(初级、中级、高级、自定义)的按钮的显示勾,以表示目前的游戏等级。
3.雷区绘制界面中雷区的绘制方法4.菜单操作有两个时候需要对它进行操作,一个是加载上次游戏设置的时候,一个是在游戏过程中进行设置的时候,设计菜单中的相关方法5.内部实现内部埋雷,放雷,标旗子,标问号的方法6.整体完善写游戏的胜利条件,自定义游戏的初始化及相关调试任务三、实现1、创建项目功能实现玩过扫雷的读者应该知道,扫雷需要用到三种图片素材——地雷、红旗、问号。
当右击一个方块的时候,会插上红旗,表示游戏者认为该方块内有地雷;再次右击该方块,会变成问号,表示不确定该方块内是否有地雷;第三次右击该方块,问号消失,恢复到初始的状态。
我们前往Iconfinder寻找合适的图标,并且通过Photoshop或者Illustrator的处理得到我们所需要的图标。
文章中含有下载地址的图标资源可以使用右键—目标另存为进行下载。
通过一定的搜索以及图片的处理,得到了下面一组素材图标,下载地址:Doubbt、Flag、Mine。
除了这些素材以外,我们还需要找一个图标,使得整个程序看上去更加正式一点,这里使用图标如下,注意程序图标的后缀为ico,下载地址:favicon接下来,我们打开Visual Studio 2013开始创建工程,界面如下:创建好的项目如下图所示。
我们需要对这个窗口的几项属性进行修改,首先通过Text属性将它的标题修改为“Minesweeper”;通过FormBorderStyle属性将它的大小设置为“FixedSingle”,即为不可调节窗口大小;通过MaximizeBox属性将它的最大化按钮设置为“False”,即最大化按钮失效;通过Name属性将它的名称修改为“Form_Main”,修改这个属性主要用于后面书写代码的方便;通过BackColor属性将它的背景修改为“White”。
《面向对象程序设计》课程设计题目及要求

《面向对象程序设计》课程设计题目及要求出题人:刘伟一.设计目的面向对象课程设计是在学生系统地学习了“面向对象程序设计(c++)”课程后,按照面向对象的设计思想,综合运用c++知识点,设计开发一个小型面向对象系统。
通过对一个实际问题的分析、设计与实现,使学生学会将书本知识用于解决实际问题,加强动手能力。
二.设计要求1.课程设计时间为2周。
2.使用任一建模工具画出类关系图3.实现类,以及功能运行完好。
4.完成课程设计报告书(内容要求见四)三、选题:公司工资管理系统设计要求:(1)公司主要有4类人员:经理、技术员、销售员、销售经理。
要求存储这些人的职工号、姓名、月工资、岗位、年龄、性别等信息。
(2)工资的计算办法:经理:固定月薪为8000;技术员:工作时间*小时工资(100元每小时);销售员:销售额*4%提成;销售经理:底薪(5000)+所辖部门销售额总额*0.5%;(3)类的层次结构大体如下:(4)输入数据要求每类人员不能少于4人,并按以下格式输出:及某销售经理所辖部门各销售员的业绩及自己的工资表:(5)总体设计,要有一个菜单,用于选择各项功能,其中数据录入:输入各种数据;数据统计:各销售经理的工资计算及最终按工资进行的冒泡排序;数据打印:打印上述表格;数据备份:把相关数据写入文件;退出:退出本系统;注:各项菜单都调用一个函数来实现。
四、课程设计报告格式包括以下6个部分:1.课程设计题目及功能分析2.UML类图(贴图)3.设计过程中的关键代码以及关键知识点分析4.运行结果展示(截屏)(贴图)5.心得体会,关于本次课程设计的收获以及对面向对象程序设计的理解。
6.附录关键程序代码(打印)7.提交时间:通知。
面向对象程序设计课程设计(要求及参考题目)

面向对象程序设计课程设计一、目的及基本要求1. 因为课程设计主要是锻炼学生,所以应该鼓励学生放手去做,激发他们钻研问题的兴趣。
围绕着书本上的内容重点,学生可以在VC++平台下设计具有各种不同功能的程序,“类”是程序设计的基础,要求要用到类的特性:即类的封装、类的抽象、继承和多态。
2.初步掌握软件开发过程的问题分析、系统设计、程序编码、测试等基本方法和技能;3.训练用系统的观点和软件开发一般规范进行软件开发,培养软件工作者所应具备的科学的工作方法和作风。
二、课程设计考核方法及成绩评定课程设计成绩分两部分,设计报告占30%,设计作品占70%。
评分标准:(1)程序设计有难度,有创意的――优(2)程序设计正确,有一定的难度――良(3)全部正确,并能正确回答设计中的问题――中(4)程序设计有少许错误,但能回答设计中的问题――及格(5)没有达到要求的-不及格三、课程设计内容及安排1. 上交源程序:学生按照课程设计的具体要求所开发的所有源程序(应该放到一个文件夹中)。
2. 上交程序的说明文件:(保存在.txt中)在说明文档中应该写明上交程序所在的目录,上交程序的主程序文件名,如果需要安装,要有程序的安装使用说明。
3. 课程设计报告:(保存在word 文档中,文件名要求按照"姓名-学号-课程设计报告"起名,如文件名为"张三-001-课程设计报告".doc)按照课程设计的具体要求建立的功能模块,每个模块要求按照如下几个内容认真完成。
其中包括:a)需求分析: 根据设计题目的要求,充分地分析和理解问题,明确问题要求做什么?(而不是怎么做?)限制条件是什么?b)概要设计重点对类进行设计,分析设计类的属性和方法。
c)程序编码。
重点功能部分要加上清晰的程序注释.d)调试分析分模块(类)进行,设计好测试数据,测试输出的结果,时间复杂度分析,和每个模块设计和调试时存在问题的思考(问题是哪些问题如何解决 ),算法的改进设想。
《面向对象程序设计》课程设计题目及要求

《面向对象程序设计》课程设计题目及要求一、课程设计总体要求:本次课程设计是对前面学过的所有面向对象的编程思想以及编程方法的一个总结、回顾和实践, 学生确定设计题目后, 要明确本次课程设计所要用到的技术点, 回顾之前学习的这些知识点, 或者到网上搜索以及查阅相关的书籍来搜集资料。
通过编写一个基于JAVA的应用系统综合实例, 来掌握JAVA语言编程技巧。
二、参考题目及要求:学生可选择下面题目或者自定题目, 但要求具有一定难度和复杂度, 是一个较为完整的应用程序。
1.编写一个记事本程序要求:用图形用户界面实现。
能实现编辑、保存、另存为、查找替换等功能。
提示: 使用文件输入输出流。
2.编写一个计算器程序要求:界面模拟Windows中的计算器程序。
实现基本数学运算、函数等功能: 加、减、乘、除、阶乘、正弦、余弦和指数运算。
实现要点: 添加相关组件并进行按钮事件处理和键盘事件处理。
3.模拟龟兔赛跑要求:用图形用户界面实现。
能设置比赛时间, 马匹的数量等等。
在任意时间段内马匹的速度是随机的。
开始比赛之后以动画显示赛马过程。
提示: 使用多线程, 赛马也可换成其他。
4.学生信息管理系统要求:使用图形用户界面用数据库建立1或2个学生信息表。
(不限使用哪种数据库)能连接数据库并实现查询、增、删、改等功能。
5.图书信息管理系统要求:使用图形用户界面用数据库建立1或2个图书信息表。
(不限使用哪种数据库)能连接数据库并实现查询、增、删、改等功能。
6.ATM柜员机模拟程序要求:使用图形用户界面。
当输入给定的卡号和密码(初始卡号和密码为123456)时, 系统能登录ATM柜员机系统, 用户可以按照以下规则进行:(1)查询余额: 初始余额为10000元(2)ATM取款: 每次取款金额为100倍数, 总额不超过5000元, 支取金额不允许透支。
(3)ATM存款: 不能出现负存款。
(4)修改密码:新密码长度不小于6位, 不允许出现6位完全相同的情况, 只有旧密码正确, 新密码符合要求, 且两次输入相同的情况下才可以成功修改密码。
面向对象程序设计教案完整版

01
将对象的属性和行为封装在一起,隐藏内部实现细节,只对外
提供必要的接口。封装提高了代码的安全性和可维护性。
继承(Inheritance)
02
子类可以继承父类的属性和行为,并可以添加新的属性和行为
。继承实现了代码的重用和扩展。
多态(Polymorphism)
03
子类可以重写父类的方法,实现不同的行为。多态使得程序具
构造函数作用及使用方法
构造函数作用
构造函数是一种特殊的方法,用于创建类的实例对象。当使 用`new`关键字创建对象时,会自动调用该类的构造函数。
使用方法
在类中定义构造函数时,需要遵循以下规则:构造函数的名 称必须与类名相同;构造函数没有返回类型;可以使用不同 的参数列表定义多个构造函数,形成构造函数的重载。
类与对象概念及关系
类(Class)是对具有相同属性 和行为的一组对象的抽象描述,
它定义了对象的结构和行为。
对象(Object)是类的实例, 具有类所描述的属性和行为。每 个对象都有其独特的状态和行为
。
类与对象之间的关系是“类型实例”关系,即类是对象的类型
,对象是类的实例。
封装、继承和多态原理
封装(Encapsulation)
类定义
类是面向对象编程的基本单元,它定义了一类事物的共同 属性和行为。在Java中,使用`class`关键字来定义一个类 。
成员变量
成员变量是类的属性,用于描述该类对象的状态。在类中 声明成员变量时,需要指定变量的访问修饰符、数据类型 和变量名。
方法声明
方法是类的行为,用于描述该类对象可以执行的操作。在 类中声明方法时,需要指定方法的访问修饰符、返回类型 、方法名和参数列表。
面向对象程序设计大作业要求

面向对象程序设计大作业
姓名:
班级:
学号:
一、论述(20分)
面向对象程序设计思想的优缺点,并详细举例说明其与C语言程序编程的不同。
答:
二、程序设计(80分)
参考实际生活中图书管理、商品销售、餐饮管理、客房管理、工资管理、人事考勤管理系统、文档管理系统,选取其中之一进行程序设计。
要求:按照选取得系统设计相应的类,设计的类至少包括添加、删除、查看(添加信息、删除信息)、退出四个,每个类至少包括四种数据成员,三种成员函数,实现的功能按照对应类设计,可按照自己设计再酌情添加相关类,同时可保存为文件。
(提示:作业重点是四个类的设计,并在设计作业中说明这四个类应该如何使用,程序具备的功能。
)
时间要求:截至12月5日前完成大作业,作业分纸质报告和程序电子文档。
纸质文档要求:1. 针对所编写的程序设计,重点要求分条(至少三条)写明所采用的课程中概念和思想,及具体使用方法。
2.(1)类的主要功能描述(1页左右),(2)重点函数实现方法描述(1页左右),(3)有简单应用示例(至少四张图),(4)类代码(五号新罗马字体,单倍行间距,建议分栏排版和双面打印,以内容整齐为准,学生自行掌握);
电子文档要求:(1)由类代码文件、main()函数文件及cpp、obj、exe文件组成的文件夹,(2)应用示例(各功能运行结果截图),每人一个文件夹(命名方式:学号_19x班_姓名),班长收齐,集中上交。
大作业程序设计如下:。
《面向对象程序设计(C++)大作业报告模板

《面向对象程序设计(C++)》课程大作业大作业名称年级专业项目成员指导教师2010 年6月1日目录1 需求分析 (1)1.1 开发背景 (1)1.2 项目目标 (1)1.3 运行环境 (1)2 程序分析 (1)2.1 技术要点 (1)2.2 项目任务书 (1)3 技术路线 (1)3.1 总体方案 (1)3.1.1 软件及开发平台 (1)3.1.2 总体方案 (1)3.2 详细设计 (2)4 工程进度 (2)5 测试报告 (2)5.1 阶段性测试 (2)5.2 总体测试 (2)6 个人小结 (2)参考文献 (2)附录程序源代码 (2)1 需求分析1.1 开发背景1.2 项目目标1.3 运行环境2 程序分析2.1 技术要点2.2 项目任务书3 技术路线3.1 总体方案3.1.1 软件及开发平台3.1.2 总体方案3.2 详细设计4 工程进度5 测试报告5.1 阶段性测试5.2 总体测试6 个人小结参考文献[1] 薛华成. 管理信息系统. 第二版. 北京: 清华大学出版社, 1993[2] R K 霍斯尼. 谷物科学与工艺学原理. 李庆龙译. 第2版. 北京: 中国食品出版社, 1989[3] 赵秀珍, 王崇文. 关于计算机学科中几个量和单位用法的建议. 见: 科技编辑学论文集.北京: 北京师范大学出版社, 1997. 125-129附录程序源代码正文文字采用宋体小四,行间距20磅。
正文所有的图表都必须在文中进行引用,图表中的字体用宋体五号,图标号在图的下方,表标号在表的上方,图标号与表标号均采用宋体五号。
图标号。
所有的图按章顺序编号,如第2章的第4个图的编号为“图2-4”,并将图的编号和名称标在图的下方(图中文字、图名称均为宋体五号字),如:图2-4 计算机与数据库表标号。
所有的表按章顺序编号,如第3章的第1个表的编号为“表3-1”,并将表的编号和名称标在表的上方(表中文字、表名称均为宋体五号字),如:所有的数字和字母都采用Times New Roman ,每段段首缩进两格。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
(1)输入教师信息
(2)插入(修改)教师信息:
(3)删除教师信息:
(4)浏览教师信息:
提示:具体功能及操作参考题1。
B、教师数据处理:
(1)按教师号录入教师基本工资、津贴、生活补贴、电话费、水电费、房租、所得税、卫生费、公积金等基本数据。
对于菜单的实现,其实也比较简单,首先我们用printf语句把程序的功能列出来,然后等待用户输入而执行不同的函数,执行完了一个功能后又回到菜单。文件的读写操作大家参照书中的有关文件的章节。
2、学生综合测评系统
每个学生的信息为:学号、姓名、性别、家庭住址、联系电话、语文、数学、外语三门单科成绩、考试平均成绩、考试名次、同学互评分、品德成绩、任课教师评分、综合测评总分、综合测评名次。考试平均成绩、同学互评分、品德成绩、任课教师评分分别占综合测评总分的60%,10%,10%,20%。
面向对象程序设计大作业参考题目及要求
面向对象程序设计大作业
参考
1、学生信息管理
(1)问题描述
学生信息包括:学号,姓名,年龄,性别,出生年月,地址,电话,E-mail等。试设计一学生信息管理系统,使之能提供以下功能:
系统以菜单方式工作
学生信息录入功能(学生信息用文件保存)---输入
学生信息浏览功能——输出
C、学生综合信息输出
提示:输出学生信息到屏幕。
3、图书管理系统
主要包括管理图书的库存信息、每一本书的借阅信息以及每一个人的借书信息。每一种图书的库存信息包括编号、书名、作者、出版社、出版日期、金额、类别、总入库数量、当前库存量、已借出本数等。每一本被借阅的书都包括如下信息:编号、书名、金额、借书证号、借书日期、到期日期、罚款金额等。每一个人的借书信息包括借书证号、姓名、班级、学号等。
查询、排序功能——算法
1、按学号查询
2、按姓名查询
学生信息的删除与修改(可选项)
(2)功能要求
界面简单明了;
有一定的容错能力,比如输入的成绩不在0~100之间,就提示不合法,要求重新输入;
最好用链表的方式实现。
(3)算法分析
首先,一个学生包括这么多的属性,应该考虑定义一个结构,其次,我们应该考虑数据的存储形式:是定义一个数组来存储,还是定义一个链表呢?在这里假如我们以数组的方式来存储,当然可以,但是我们知道,假如我们定义一个数组的话,我们首先必须知道学生人数大概是多少,以便我们确定数组的大小,但是题目中没有给出,而且题目要求中有大量的删除、插入操作,所以用链表的方式比较方便。
(3)删除同学信息:
提示:输入将删除同学号,读出该同学信息,要求对此进行确认,以决定是否删除将删除后的信息写到文件中。
(4)浏览学生信息:
提示:打开文件,显示该文件的学生信息。
B、学生数据处理:
(1)按考试科目录入学生成绩并且按公式:考试成绩=(语文+数学+外语)/3计算考试成绩,并计算考试名次,提示:先把学生信息读入数组,然后按提示输入每科成绩,计算考试成绩,求出名次,最后把学生记录写入一个文件中。
系统功能包括以下方面:
A、借阅资料管理
要求把书籍、期刊、报刊分类管理,这样的话操作会更加灵活和方便,可以随时对其相关资料进行添加、删除、修改、查询等操作。
B、借阅管理
(1)借出操作
(2)还书操作
(3)续借处理
提示:以上处理需要互相配合以及赔、罚款金额的编辑等操作完成图书借还业务的各种登记。例如:读者还书时不仅更新图书的库存信息,还应该自动计算该书应罚款金额。并显示该读者所有至当日内到期未还书信息。
E系统参数设置:可以设置相关的罚款金额,最多借阅天数等系统服务器参数。
4、学校运动会管理系统
问题描述:
(1)初始化输入:N-参赛院系总数,M-男子各项目名次取法有如下几种:
取前5名:第1名得分7,第2名得分5,第3名得分3,第4名得分2,第5名得分1;
(3)由程序提醒用户填写比赛结果,输入各项目获奖运动员的信息。
A、学生信息处理
(1)输入学生信息、学号、姓名、性别、家庭住址、联系电话,按学号以小到大的顺序存入文件中。
提示:学生信息可先输入到数组中,排序后可写到文件中。
(2)插入(修改)同学信息:
提示:先输入将插入的同学信息,然后再打开源文件并建立新文件,把源文件和输入的信息合并到新文件中(保持按学号有序)若存在该同学则将新记录内容替换源内容,
(2)输入功能:可以一次完成若干条信息的输入。
(3)显示功能:完成全部通讯录信息的显示(一屏最多显示10条,超过十条应能够自动分屏显示)
(4)查找功能:可以按姓名等多种方式查找通讯信息
(5)增加、删除、修改功能:完成通讯录信息的多种更新
6、教师工资管理系统
每个教师的信息为:教师号、姓名、性别、单位名称、家庭住址、联系电话、基本工资、津贴、生活补贴、应发工资、电话费、水电费、房租、所得税、卫生费、公积金、合计扣款、实发工资。注:应发工资=基本工资+津贴+生活补贴;合计扣款=电话费+水电费+房租+所得税+卫生费+公积金;实发工资=应发工资-合计扣款。
C、读者管理
读者等级:对借阅读者进行分类处理,例如可分为教师和学生两类。并定义每类读者的可借书数量和相关的借阅时间等信息。
读者管理:对读者信息可以录入,并且可对读者进行挂失或注销、查询等服务的作业。
D、统计分析
随时可以进行统计分析,以便及时了解当前的借阅情况和相关的资料状态,统计分析包括借阅排行榜、资料状态统计和借阅统计、显示所有至当日内到期未还书信息等功能分析。
(4)所有信息记录完毕后,用户可以查询各个院系或个人的比赛成绩,生成团体总分报表,查看参赛院系信息、获奖运动员、比赛项目信息等。
5、个人通讯录管理系统
建立一通讯录,输入姓名、电话号码、住址等信息,然后对通信簿进行显示、查找、添加、修改及删除。
功能要求
(1)通讯录的每一条信息包括姓名、单位、固定电话、移动手机、分类(如同事、朋友、同学、家人等)、EMAIL、QQ等。
(2)学生测评数据输入并计算综合测评总分及名次。
提示:综合测评总分=(考试成绩)*0.6+(同学互评分)*0.1+品德成绩*0.1+任课老师评分*0.2。
(3)学生数据管理
提示:输入学号,读出并显示该同学信息,输入新数据,将改后信息写入文件
(4)学生数据查询:
提示:输入学号或其他信息,即读出所有数据信息,并显示出来。