c++面向对象程序设计大作业
- 格式:docx
- 大小:210.85 KB
- 文档页数:13
学习中心/函授站姓名学号西安电子科技大学网络与继续教育学院2022 学年下学期《面向对象程序设计(C++)》期末考试试题(综合大作业)考试说明:1、大作业试题公布时间:(1)毕业班:2022 年10 月21 日;(2)正常班:2022 年11 月18 日;2、考试必须独立完成,如发现抄袭、雷同均按零分计;3、答案须用《西安电子科技大学网络与继续教育学院2022 秋期末考试答题纸》(个人专属答题纸)手写完成,要求字迹工整、卷面干净、整齐;4、在线上传时间:(1)毕业班学生于2022 年10 月21 日至2022 年11 月1 日在线上传大作业答卷;(2)正常班学生于2022 年11 月18 日至2022 年12 月5 日在线上传大作业答卷;5、拍照要求完整、清晰,一张图片对应一张个人专属答题纸(A4 纸),正确上传。
一、简答题(10 分)1、运算符 new 和 delete 的功能分别是什么?(3 分)答案:运算符new的功能是创建动态对象;delete的功能是释放由new创建的动态对象。
2、若派生类以 private 方式从一个基类派生,派生类的对象可以访问基类中的哪些成员?派生类的成员函数可以访问基类中的哪些成员?(3 分)答案:若派生类以private方式从一个基类派生,派生类的对象不能访问基类中的任何成员(1分);派生类的成员函数可以访问基类中的public和protected成员(2分)。
3、构造函数的作用是什么?在创建派生类的对象时,应按照怎样的顺序调用构造函数?(4 分)答案:构造函数的作用是创建对象并对其进行必要的初始化。
(1分)构造函数调用顺序:基类构造函数、子对象类构造函数(如果有)、派生类构造函数。
(2分)二、填空题(每空 2 分,共 20 分)1、函数的返回值是通过函数体中的return语句带回的;若被调用函数被定义为 void 类型,则被调用函数不带回任何值。
2、表示逻辑关系“ a 大于等于8 或者 a 小于等于5”的C++表达式是。
武汉轻工大学面向对象程序设计期末大作业专业:电子信息科学与技术班级:电信产业1301班学号:1304100025姓名:肖梦1目的与要求学生能够比较熟练地掌握C++语言的基本语法规则;熟练掌握基本的面向对象的程序设计方法,如类的实现、创建类的实例—对象、实现类的继承等;掌握各种面向对象的程序设计技术,如继承和派生,虚继承、虚函数、抽象类、多态的实现等。
掌握在VC++平台上进行程序设计和调试的方法。
学生利用学到的面向对象的基本原理和C++语言语法以及编程技巧,通过灵活应用Visual C++6.0 集成开发环境进行应用程序和系统的开发设计,掌握可视化程序设计的基本方法和步骤,强化巩固已有编程知识,训练新的设计与编程思路,帮助熟悉程序编写,及时查究错误。
要求学生独立完成完整的用C++语言编写的应用程序,以全面掌握C++面向对象程序设计的基础知识。
2 设计内容2.1计算两点之间的距离用类实现计算两点之间的距离。
(可以定义点类(Point),再定义一个类(Distance)描述两点之间的距离,其数据成员为两个点类对象,两点之间距离的计算可设计由构造函数来实现。
)2.1.1 程序设计方案和原理根据题目要求本题可以用类的组合来实现。
我们可以用一个point类来描述平面上点的的坐标,然后为Distance类添加一个Point类的对象作为其数据成员,用来计算两个点之间的距离。
2.1.2 程序的代码实现#include<iostream.h>#include<math.h>class Point //定义Point类{public:Point(int a=0,int b=0){x=a;y=b;}int xcord(){return x;}int ycord (){return y;}private:int x,y;};class Distance //定义Distance类作为容器类{public:Distance(Point q1,Point q2);float getdist(){return dist;}private:Point p1,p2; //p1,p2是类嵌对象float dist;};Distance::Distance(Point q1,Point q2):p1(q1),p2(q2) /*Distance类的构造函数通过初始化列表向类嵌对象的构造函数赋值*/{float x=float(p1.xcord()-p2.xcord());float y=float(p1.ycord()-p2.ycord());dist=sqrt(x*x+y*y); //两点间距离}void main(){Point p(0,0),q(1,1); //创建Point类对象Distance dis(p,q); //创建Distance类对象cout<<"The distance is: "<<dis.getdist()<<endl;}Distance类为容器类,包含Point类的内嵌对象q1和q2,Distance类的构造函数通过初始化列表向Point类的构造函数传递参数。
《面向对象程序设计》期末大作业一、大作业题目二、要求(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”。
2020-2021学年第一学期期末考试《面向对象程序设计》大作业一名词解释题 (共10题,总分值30分 )1. 全局变量(3 分):变量分为局部与全局,局部变量又可称之为内部变量。
由某对象或某个函数所创建的变量通常都是局部变量,只能被内部引用,而无法被其它对象或函数引用。
2. 菜单(3 分):实际是一种树型结构,为软件的大多数功能提供功能入口。
3. 图标(3 分):通常用来做广告宣传的商标或特定标志。
4. main函数(3 分):又称主函数,是程序执行的起点,main是相对来说的,如同音学理论之主调于泛音,泛音即程序中的除main之外的其他函数,迎合人们的思考方式而生成的而非必定的模式。
有主有次,执行起来条清缕析,既可将程序模块化又实现了一个闭合的整体。
5. 控件(3 分):Windows设计了一些具有图形外观的程序实体,这些程序实体在鼠标或键盘的作用下会使程序出现不同的响应,这些可以接收或者产生事件的程序实体就叫做控件。
6. 继承(3 分):指一个类(即称子类)因承袭而具有另一个类(或称父类)的能力和特征的机制或关系。
7. 宏(3 分):计算机科学里的宏是一种抽象(Abstraction),它根据一系列预定义的规则替换一定的文本模式。
解释器或编译器在遇到宏时会自动进行这一模式替换。
8. 用户界面(3 分):信息系统中需要用户交互的输入和输出部分。
9. 窗口(3 分):计算机图形学中的窗口是用户坐标系中需要进行观察和处理的一个坐标区域。
10. 数据成员(3 分):包含与非叶成员直接相关的值,该值独立于由该成员的后代计算得到的汇总值。
二简答题 (共5题,总分值40分 )11. While语句的形式为while(<表达式> ) <语句> ;当表达式满足什么条件时可以执行语句的内容?(8 分)答:以下是while语句的基本形式: while(表达式)语句:其中“表达式”可以是任意合法的表达式。
《面向对象程序设计(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 ,每段段首缩进两格。
面向对象程序设计大作业
姓名:
班级:
学号:
一、论述(20分)
面向对象程序设计思想的优缺点,并详细举例说明其与C语言程序编程的不同。
答:
二、程序设计(80分)
参考实际生活中图书管理、商品销售、餐饮管理、客房管理、工资管理、人事考勤管理系统、文档管理系统,选取其中之一进行程序设计。
要求:按照选取得系统设计相应的类,设计的类至少包括添加、删除、查看(添加信息、删除信息)、退出四个,每个类至少包括四种数据成员,三种成员函数,实现的功能按照对应类设计,可按照自己设计再酌情添加相关类,同时可保存为文件。
(提示:作业重点是四个类的设计,并在设计作业中说明这四个类应该如何使用,程序具备的功能。
)
时间要求:截至12月5日前完成大作业,作业分纸质报告和程序电子文档。
纸质文档要求:1. 针对所编写的程序设计,重点要求分条(至少三条)写明所采用的课程中概念和思想,及具体使用方法。
2.(1)类的主要功能描述(1页左右),(2)重点函数实现方法描述(1页左右),(3)有简单应用示例(至少四张图),(4)类代码(五号新罗马字体,单倍行间距,建议分栏排版和双面打印,以内容整齐为准,学生自行掌握);
电子文档要求:(1)由类代码文件、main()函数文件及cpp、obj、exe文件组成的文件夹,(2)应用示例(各功能运行结果截图),每人一个文件夹(命名方式:学号_19x班_姓名),班长收齐,集中上交。
大作业程序设计如下:。
《面向对象程序设计(C++)》大作业任务书一、题目每组同学(3人一组)可从下列给出的参考题目中任选一题完成,不可以重复。
(1)消费卡支付管理系统(2)驾校学员管理系统(3)网吧上网管理系统(4)超市管理系统(5)网上购物管理系统(6)校园一卡通管理系统(7)家族族谱管理系统(8)银行管理系统(9)个人财务管理系统(10)图书馆管理系统(11)学生成绩管理系统(12)药店进销存管理系统(13) 学生选课管理系统(14)高校招生管理系统(15)公交一卡通管理系统(16)食品安全管理系统(17)机场汽车出入管理系统(18)个人电话簿管理系统(19)建筑公司承包管理系统(20)餐馆营业管理系统其余题目略。
二、对象本学期“面向对象程序设计(C++)”选课班全体同学。
三、目的(1)掌握面向对象程序设计(OOP)的思想,区别传统的过程式程序设计思想,能够使用面向对象的程序设计思想解决实际问题;(2)掌握在Visual C++集成开发环境下编辑、编译、链接和运行一个C++程序的基本方法;(3)独立完成每个程序设计和编码,能够灵活运用各种调试命令修改源程序中可能出现的错误,并能根据问题进行学习、拓广、深化。
(4)学会科学地撰写总结报告,加深对所学知识的理解和掌握,答辩中考察学生的技能,并培养学生的表达和思辨能力。
四、要求(1)根据学生人数分成原则上3人(少量4人)一组,各小组选择感兴趣的题目,在课外完成查找资料、选题、拟大纲、小组讨论、研究写作等各环节;每一环节完成后,在课堂上进行小组之间的讨论、教师点评,最后确定解决问题的方案。
(2)问题规模:体现面向对象程序设计语言的特点,程序代码不少于400行;使用技术:体现OOP的抽象、封装、继承、多态等4种关键技术中的两种或多种;程序结构良好,没有明显错误;按照大作业格式,在课程结束前一周交电子稿和打印稿。
五、内容(1)系统说明书内容包括:①问题描述②类体系设计和程序流程图③各类定义的基本功能,即主要数据和函数功能描述④拟采用开发平台(Visual C++,Borland C++等)(2)大作业报告根据原有的系统设计,编码阶段的工作,整理书写实验报告,内容包括:①系统说明②实验分析与结论③收获与体会④附程序代码(3)最后提交材料:①大作业报告(打印稿和电子稿)②源程序代码(CPP文件),执行文件(EXE)六、评分本次大作业占期末考试总成绩的20%,满分20分。