实验6 多态性(一)
- 格式:doc
- 大小:182.50 KB
- 文档页数:6
中南大学现代远程教育课程考试(专科)复习题及参考答案软件工程一、单项选择题1、下列哪个阶段不是软件生存期三个阶段中的内容()。
A、计划阶段B、开发阶段C、编码阶段D、维护阶段2、软件按照设计的要求,在规定时间和条件下达到不出故障,持续运行的要求的质量特性称为 ( )A、可用性B、可靠性C、正确性D、完整性3、需求分析阶段结束后,应交出的文档中不包括()。
A、数据流图B、数据字典C、简明的算法描述D、项目的经费预算4、关于数据流图不正确的描述是()。
A、数据流图是结构化系统分析的主要工具。
B、在数据流图中,*号标识相邻的数据流只取其一。
C、加工是以数据结构或数据内容作为加工对象的。
D、数据流图的主图中必须包括全部四种基本元素。
5、瀑布模型的存在问题是()A、用户容易参与开发B、缺乏灵活性C、用户与开发者易沟通D、适用可变需求6、软件调试技术包括()A、边界值分析B、演绎法C、循环覆盖D、集成测试7、软件维护产生的副作用,是指()A、开发时的错误B、隐含的错误C、因修改软件而造成的错误D、运行时误操作8、软件测试不包括()方面的差错和纠错。
A、软件计划B、软件设计C、软件编码D、软件价格9、在快速原型模型的开发过程中,仅作为需求说明的补充形式的原型是()A、探索型模型B、演化型模型C、实验型模型D、提交型模型10、数据字典是软件需求分析阶段的最重要的工具之一,其最基本的功能是()A、数据控制B、数据定义C、数据操纵D、数据约束11、软件文档是软件工程实施中的重要成分,它不仅是软件开发各阶段的重要依据而且也影响软件的()A、可使用性B、可操作性C、可维护性D、可开发性12、在瀑布模型中,将软件开发划分为若干个时期,软件项目的可行性研究一般被归属于()A、定义时期B、分析论证时期C、调研时期D、初始阶段13、结构化分析方法是一种预先严格定义需求的方法,它在实施时强调的是分析对象的()A、数据流B、数据元素C、数据结构D、数据约束14、软件维护是软件得以正常运行的重要环节,按照软件工程方法的理解,一般软件维护应该开始于()A、修改源代码B、阅读设计文档C、阅读源代码D、修改设计文档15、以实体、联系和属性等基本概念为基础的实体联系图是基本实体联系图。
实验6:验证机械能守恒定律一、实验目的验证机械能守恒定律.二、实验原理在只有重力做功的自由落体运动中,物体的重力势能和动能互相转化,但总的机械能守恒。
若物体从静止开始下落,下落高度为h 时的速度为v,恒有mgh=错误!m v2。
故只需借助打点计时器,通过纸带测出重物某时刻的下落高度h和该时刻的瞬时速度v,即可验证机械能守恒定律。
测定第n点的瞬时速度的方法是:测出第n点相邻的前、后两段相等时间间隔T内下落的高度x n-1和x n+1(或用h n-1和h n+1),然后由公式v n=错误!或由v n=错误!可得v n(如图所示)。
三、实验器材铁架台(带铁夹)、电磁打点计时器与低压交流电源(或电火花打点计时器)、重物(带纸带夹子)、纸带数条、复写纸片、导线、毫米刻度尺。
四、实验步骤1.安装器材:如图所示,将打点计时器固定在铁架台上,用导线将打点计时器与低压电源相连,此时电源开关应为断开状态。
2.打纸带:把纸带的一端用夹子固定在重物上,另一端穿过打点计时器的限位孔,用手竖直提起纸带,使重物停靠在打点计时器下方附近,先接通电源,待计时器打点稳定后再松开纸带,让重物自由下落,打点计时器就在纸带上打出一系列的点,取下纸带,换上新的纸带重打几条(3~5条)纸带。
3.选纸带:分两种情况说明(1)若选第1点O到下落到某一点的过程,即用mgh=错误!m v2来验证,应选点迹清晰,且1、2两点间距离小于或接近2 mm的纸带,若1、2两点间的距离大于2 mm,这是由于打点计时器打第1个点时重物的初速度不为零造成的(如先释放纸带后接通电源等错误操作会造成此种结果)。
这样第1个点就不是运动的起始点了,这样的纸带不能选。
(2)用错误!m v错误!-错误!m v错误!=mgΔh验证时,由于重力势能的相对性,处理纸带时选择适当的点为基准点,这样纸带上打出的第1、2两点间的距离是否为2 mm就无关紧要了,所以只要后面的点迹清晰就可以选用。
实验6_果蝇的单因子杂交
果蝇的单因子杂交是一种研究生物多态性的有效实验方法。
它通过在不同性别之间提前杂交某一种基因特征,如色素、组织或表型,以实现一系列特定的目的。
这种实验使用的模式是果蝇(葡萄白蝇),它们的色素性状形成了一个长期的遗传实验,一直被学术界引用和研究。
果蝇单因子杂交的实验过程是:首先,介入者开始观察果蝇的特征,根据杂交形态,它们给出了多种颜色,其中有黑色、浅黄色、中灰色、深褐色和灰褐色。
然后,他们将不同的小窝两两放入,分别杂交交配,进行种群的初始检测。
接下来,他们将所有的果蝇小窝放入一个大箱子,监测其行为,帮助理解它们的进化机制。
在这种实验中,杂交的具体结果表现为黑褐色的果蝇优势在数量上进行繁殖,而灰褐色的果蝇数量则有所减少,表明颜色使果蝇存活率失去平衡。
果蝇单因子杂交实验可以解释多种不同优势型共存的原理,它不仅是进行更多研究或开发更多新品种的基础,还可以帮助观测和记录物种演变和遗传变异过程,具有重要的实验价值。
通过对果蝇的单因子杂交进行实验,研究者得出的结论是,在果蝇中,颜色是一种重要的遗传性状,它在果蝇群体中的优势程度取决于环境影响的强弱。
最终,这一实验帮助研究基因变异的规律以及有关生物多样性研究的至关重要的内容。
面向对象程序设计实验指导书(适用:电子信息11级)彭召意陶立新编写计算机与通信学院2014.9目录实验一 C++基础的应用 (1)实验二类和对象的应用 (3)实验三类的构造函数、析构函数的应用 (4)实验四友员和运算符重载 (5)实验五类的继承与派生 (6)实验六类的多态性与虚函数 (7)附录:各实验的程序代码 (8)实验一 C++基础的应用(实验课时:2 实验性质:设计)实验名称: C++基础的应用实验目的: (1)进一步学习VC++6.0开发环境及程序调试方法。
(2)练习C++函数的定义及使用;(3)练习C++数组的定义及使用;(4)练习C++指针的定义及使用;(5)练习C++结构体的定义及使用;(6)练习多文件的程序的编译和运行方法;实验设备:(1)硬件:个人微机(配置不低于:CPU为P4,主频1.6G,内存256MB,硬盘40GB);(2)软件:操作系统为WindowsXP(或2000、server2003等),工具软件为Visual C++6.0。
实验内容: (1)熟悉Visual C++6.0编译系统的常用功能,特别是debug调试功能;(2)编程1:编写一个程序c1.cpp,用来求2个或3个整数的最大数。
要求:用重载函数的方法来求最大数;函数原型:int max( int a, int b) 和int max( int a, int b,int c)。
(3)编程2:编写一个程序c2.cpp,求:a!+ b! + c!的值。
要求:使用递归函数。
主程序和函数分开到两个源程序文件中,分别进行编译后,再运行;(4)编程3:有一个3*4的矩阵,要求编程求出其中值最大的那个元素的值,以及其所在的行号和列号;(5)编程4:建立一个动态链表并进行输出和删除管理。
链表的每个节点为学生信息,包括:学号,姓名,性别,下一学生信息的指针。
程序的工作:(a)建立三个学生信息的节点,然后顺序输出该三个学生信息;(b)删除中间的节点,再顺序输出学生信息。
实验六甲基丙烯酸甲酯的本体聚合一、目的要求:1、了解本体聚合的原理,2、熟悉有机玻璃的制备方法。
二、原理:聚甲基丙烯酸甲酯(PMMA),俗称有机玻璃。
有机玻璃广泛用在工业、农业、军事、生活等的各个领域,如飞机、汽车的透明窗玻璃、罩盖等。
在建筑、电气、医疗卫生、机电等行业也广泛使用,如制造光学仪器、电器、医疗器械、透明模型、装饰品、广告铭牌等。
每年全世界要消耗数以百万吨的有机玻璃及其制品。
工业上制备有机玻璃主要采用本体、悬浮聚合法,其次是溶液和乳液法。
而有机玻璃的板、棒、管材制品通常都用本体浇铸聚合的方法来制备。
如果直接做甲基丙烯酸甲酯的本体聚合,则由于发热而产生气体只能得到有气泡的聚合物。
如果选用其它聚合方法(如悬浮聚合等)由于杂质的引入,产品的透明度都远不及本体聚合方法。
因此,工业上或实验室目前多采用浇注方法。
即:将本体聚合迅速进行到某种程度(转化率10% 左右)做成单体中溶有聚合物的粘稠溶液(预聚物)后,再将其注入模具中,在低温下缓慢聚合使转化率达到 93 ~ 95% 左右,最后在 100 ℃下聚合至反应完全。
其反应方程式如下:甲基丙烯酸甲酯在过氧化苯甲酰引发剂存在下进行如下聚合反应:本实验采用本体聚合法制备有机玻璃。
本体聚合是在没有介质存在的情况下只有单体本身在引发剂或光、热等作用下进行的聚合,又称块状聚合。
体系中可以加引发剂,也可以不加引发剂。
按照聚合物在单体中的溶解情况,可以分为均相聚合和多相聚合两种:聚合物溶于单体,为均相聚合,如甲基丙烯酸甲酯,苯乙烯等的聚合;聚合物不溶于单体,则为多相聚合,如氯乙烯,丙烯腈的聚合。
本体聚合的产物纯度高、工序及后处理简单,但随着聚合的进行,转化率提高,体系黏度增加,聚合热难以散发,系统的散热是关键。
同时由于黏度增加,长链游离基末端被包埋,扩散困难使游离基双基终止速率大大降低,致使聚合速率急剧增加而出现所谓自动加速现象或凝胶效应,这些轻则造成体系局部过热,使聚合物分子量分布变宽,从而影响产品的机械强度;重则体系温度失控,引起爆聚。
第6讲力与运动(1)辅导教案 20242025学年沪粤版物理八年级下册在设计这节《力与运动(1)》的物理课程时,我的意图是让学生在直观的实验和实践中,理解力对物体运动状态的影响。
通过活动的开展,让学生从生活中常见的运动现象中,感受力的作用,进一步理解牛顿第一定律。
教学目标:1. 让学生能够通过实验观察,了解力对物体运动状态的影响。
2. 使学生能够运用牛顿第一定律解释一些日常生活中的运动现象。
3. 培养学生的观察能力、实验能力和解决问题的能力。
教学难点与重点:重点:力对物体运动状态的影响。
难点:牛顿第一定律的理解和应用。
教具与学具准备:1. 教具:小车、滑轮组、阻力板、弹簧秤。
2. 学具:记录表格、笔。
活动过程:一、实践情景引入(5分钟)我会演示一个实验:将一个小车放在水平桌面上,用弹簧秤施加一个向前的力,观察小车的运动状态。
让学生观察并描述他们看到的现象。
二、实验探究(15分钟)1. 学生分组,每组一个小车、滑轮组、阻力板和弹簧秤。
2. 学生通过改变施加在物体上的力的大小和方向,观察小车的运动状态的变化,并记录在记录表格中。
3. 学生观察到,当施加的力大于阻力时,小车会向前运动;当施加的力小于阻力时,小车会减速或停止;当施加的力等于阻力时,小车会保持匀速直线运动。
2. 引入牛顿第一定律:当物体不受外力或受平衡力时,物体将保持静止状态或匀速直线运动状态。
四、应用与拓展(5分钟)1. 让学生运用牛顿第一定律,解释一些日常生活中的运动现象,如:为什么踢出去的足球会慢慢停下来?2. 学生通过讨论和分享,深化对力的作用和牛顿第一定律的理解。
活动重难点:重点:力对物体运动状态的影响。
难点:牛顿第一定律的理解和应用。
课后反思及拓展延伸:通过这节课,我发现学生们对力的作用有了更深入的理解,能够通过实验观察到力对物体运动状态的影响。
但在解释日常生活中的运动现象时,部分学生对牛顿第一定律的应用还不够熟练,需要在课后加强练习和思考。
植物组织水势的测定(小液流法)一、原理将植物组织分别放在一系列浓度递增的溶液中。
当找到某一浓度的溶液与植物组织之间水分保持动态平衡时,则可认为此植物组织的水势等于该溶液的水势。
因溶液的浓度是已知的,可以根据公式算出溶液的渗透势,即代表植物相应的水= - P = -icRT。
势(Ψw)。
Ψw=Ψ∏二、材料、仪器设备及试剂(一)材料:菠菜等植物叶片(二)仪器设备:青霉素小瓶5个、试管5支、毛细管1支、打孔器等。
(三)试剂:1.0mol/L蔗糖溶液、甲烯蓝粉末。
三、实验步骤1、按下表配制一系列浓度的蔗糖溶液溶液配置一览表2、另取5个青霉素小瓶与试管对应编号,并在试管中各取2ml溶液放入能应的青霉素小瓶中。
3、将叶片表面浮土擦干净,用打孔器打50个小圆片,然后在每个小瓶内放入10片,使叶圆片全部浸没于溶液中。
放置30分钟,中间摇动数次。
4、在每个小瓶中加入稍许甲烯蓝粉沫,振荡。
5、用毛细管分别从小瓶中依次吸取少量小瓶中的蓝色溶液少许,插入相对应编号的试管液层中部,小心地挤入一滴,并迅速将吸管拔出,观察蓝色小液流的升降情,并记录。
观察结果记录表四、结果计算将求得的等渗浓度值代入如下公式:Ψw=Ψ=-iCRT ×1.013 ×0.1式中:Ψw=植物组织的水势(单位:MPa)、Ψ∏=溶液的渗透势(单位:MPa)、C = 等渗溶液(mol/kg)、R = 气体常数、T = 绝对温度、i= 等渗系数(蔗糖=1)、1大气压=1.013巴,1巴=0.1MPa、注:实验中一点点甲烯蓝粉末即可,加入太多会影响溶液浓度。
根系活力的测定--甲烯蓝法一、实验目的植物根系是活跃的吸收器官,根的生长情况和活力水平直接影响地上部分的生长、营养状况及产量水平。
本实验练习测定根系活力的方法,为植物营养研究提供依据。
二、实验原理根据沙比宁等人理论,植物对溶质的最初吸收具有吸附的特性,并假定这时在根系表面均匀地覆盖了一层被吸附物质的单分子层,而后在根系表面产生吸附饱和,继之根系的活跃部分将原来吸附着的物质解吸附到细胞中去,继续产生吸附作用。
现代分子生物学课后习题及答案(共10章)第一章 绪论1. 你对现代分子生物学的含义和包括的研究范围是怎么理解的?2. 分子生物学研究内容有哪些方面?3. 分子生物学发展前景如何?4. 人类基因组计划完成的社会意义和科学意义是什么?答案:1. 分子生物学是从分子水平研究生命本质的一门新兴边缘学科,它以核酸和蛋白质等生物大分子的结构及其在遗传信息和细胞信息传递中的作用为研究对象,是当前生命科学中发展最快并正在与其它学科广泛交叉与渗透的重要前沿领域。
狭义:偏重于核酸的分子生物学,主要研究基因或DNA的复制、转录、表达和调节控制等过程,其中也涉及与这些过程有关的蛋白质和酶的结构与功能的研究。
分子生物学的发展为人类认识生命现象带来了前所未有的机会,也为人类利用和改造生物创造了极为广阔的前景。
所谓在分子水平上研究生命的本质主要是指对遗传、 生殖、生长和发育等生命基本特征的分子机理的阐明,从而为利用和改造生物奠定理论基础和提供新的手段。
这里的分子水平指的是那些携带遗传信息的核酸和在遗传信息传递及细胞内、细胞间通讯过程中发挥着重要作用的蛋白质等生物大分子。
这些生物大分子均具有较大的分子量,由简单的小分子核苷酸或氨基酸排列组合以蕴藏各种信息,并且具有复杂的空间结构以形成精确的相互作用系统,由此构成生物的多样化和生物个体精确的生长发育和代谢调节控制系统。
阐明这些复杂的结构及结构与功能的关系是分子生物学的主要任务。
2. 分子生物学主要包含以下三部分研究内容:A.核酸的分子生物学,核酸的分子生物学研究核酸的结构及其功能。
由于核酸的主要作用是携带和传递遗传信息,因此分子遗传学(moleculargenetics)是其主要组成部分。
由于50年代以来的迅速发展,该领域已形成了比较完整的理论体系和研究技术,是目前分子生物学内容最丰富的一个领域。
研究内容包括核酸/基因组的结构、遗传信息的复制、转录与翻译,核酸存储的信息修复与突变,基因表达调控和基因工程技术的发展和应用等。
现代分子生物学课后习题及答案(共10章)第一章绪论1.你对现代分子生物学的含义和包括的研究范围是怎么理解的?答:分子生物学是从分子水平研究生命本质的一门新兴边缘学科,它以核酸和蛋白质等生物大分子的结构及其在遗传信息和细胞信息传递中的作用为研究对象,是当前生命科学中发展最快并正在与其它学科广泛交叉与渗透的重要前沿领域。
狭义:偏重于核酸的分子生物学,主要研究基因或DNA的复制、转录、表达和调节控制等过程,其中也涉及与这些过程有关的蛋白质和酶的结构与功能的研究。
分子生物学的发展为人类认识生命现象带来了前所未有的机会,也为人类利用和改造生物创造了极为广阔的前景。
所谓在分子水平上研究生命的本质主要是指对遗传、生殖、生长和发育等生命基本特征的分子机理的阐明,从而为利用和改造生物奠定理论基础和提供新的手段。
这里的分子水平指的是那些携带遗传信息的核酸和在遗传信息传递及细胞内、细胞间通讯过程中发挥着重要作用的蛋白质等生物大分子。
这些生物大分子均具有较大的分子量,由简单的小分子核苷酸或氨基酸排列组合以蕴藏各种信息,并且具有复杂的空间结构以形成精确的相互作用系统,由此构成生物的多样化和生物个体精确的生长发育和代谢调节控制系统。
阐明这些复杂的结构及结构与功能的关系是分子生物学的主要任务。
2.分子生物学研究内容有哪些方面?答:分子生物学主要包含以下三部分研究内容:A.核酸的分子生物学,核酸的分子生物学研究核酸的结构及其功能。
由于核酸的主要作用是携带和传递遗传信息,因此分子遗传学(moleculargenetics)是其主要组成部分。
由于50年代以来的迅速发展,该领域已形成了比较完整的理论体系和研究技术,是目前分子生物学内容最丰富的一个领域。
研究内容包括核酸/基因组的结构、遗传信息的复制、转录与翻译,核酸存储的信息修复与突变,基因表达调控和基因工程技术的发展和应用等。
遗传信息传递的中心法则(centraldogma)是其理论体系的核心。
《C语言程序设计实验》指导书(简明版)**大学软件学院**年**月实验一顺序结构程序设计(2学时)一、实验目的1、熟悉C编译环境、简单C程序结构及书写方式、以及C程序的编辑、编译、连接、运行、调试的步骤;2、掌握C语言的基本数据类型及其输入输出格式,以及输入输出函数的使用方法;3、掌握C语言的算术运算符(特别是自增、自减运算符)、赋值运算符、关系运算符、逻辑运算符、条件运算符、逗号运算符的使用;4、掌握C语言顺序结构程序的执行流程、设计方法,能够根据实际问题灵活使用顺序结构,画出程序的算法流程图,设计出逻辑合理、思路清晰、结果正确的顺序结构程序。
二、实验内容及要求1、实验内容包括8道题目,分为基本内容和选做内容两部分。
要求:(1)基本内容中的实验题目是必须要完成的,选做内容中的实验题目可以根据自己的情况选做或全做(越多越好,适当加分);(2)在实验之前编写出基本内容、选做内容中的所有程序,实验前检查(视未完成情况适当扣分);(3)对于设计型题目,要求画出程序流程图(传统流程图和N-S图);(4)在上机实验过程中,注意总结和体会上机步骤(编辑、编译、连接、运行、调试、结果分析),注意培养观察、分析和排除编译错误、连接错误和程序逻辑错误的初步能力;(5)上机结束后,应按要求认真书写实验报告(格式见附件)。
2、基本内容(1)[验证型]编辑下列程序,然后进行编译、连接和运行,观察结果,并简要总结简单C程序的结构、书写格式以及上机过程;#include <stdio.h>int main( ){printf("Hello, world!\n");return 0;}(2)[验证型]通过运行下列程序,分析各种格式符的使用方法。
#include <stdio.h>int main( ){int a = 9, b = 2;float x = 32.8459, y = -792.451;char d = 'R';long n = 5461237;unsigned u = 65535;printf("%d,%d\n", a, b);printf("%3d,%3d\n", a, b);printf("%f,%f\n", x, y);printf("%-10f,%-10f\n", x, y);printf("%8.2f,%8.2\n", x, y);printf("%.4f,%.4f\n", x, y);printf("%3f,%3f\n", x, y);printf("%e,%10.2e\n", x, y);putchar(d);putchar('\n');printf("%c,%d,%o,%x\n", d, d, d, d);printf("%ld,%lo,%x\n", n, n, n);printf("%u,%o,%x,%d\n", u, u, u, u);return 0;}(3)[验证型]编辑下列程序,进行编译、连接和运行。
福建农林大学实验报告
实验6 多态性(一)
一、实验目的和要求
(1)掌握虚函数的定义与使用方法,进一步理解多态性的概念和分类。
(2)了解纯虚函数和抽象类的使用方法。
二、实验内容和原理
1、分析并调试下列程序,回答以下问题:(1)指出抽象类(2)指出虚函数,并说明它的作用(3)每个类的作用是什么?整个程序的作用是什么?
2、使用虚函数编写程序求球体、圆柱体和圆锥的体积,由于球体、圆柱体和圆锥都可以看做由圆继
承而来,所以可以定义圆类作为基类。
在圆类中定义数据成员半径和一个求体积的虚函数。
由圆类
派生出球体类、圆柱体类和圆锥类,在派生类中对圆类中的虚函数重新定义。
编写一个外部函数求
各类形状的总体积。
最后在main()函数中构造若干形状,并求它们的体积和。
三、实验环境
1. 硬件:PC机;
2. 软件:Windows操作系统、Visual C++ 6.0
四、算法描述及实验步骤
1、算法描述及步骤如下:
(1)根据题目要求编写好程序代码并在VC环境下输入源程序。
(2)检查程序有无错误(包括语法错误和逻辑错误),有则改之。
(3)编译和连接,仔细分析编译信息,如有错误应找出原因并改正之。
本题改正后的代码如下:
#include<iostream.h>
const double PI=3.1415;
class Shap
{
public:virtual double Area()=0;
};
class Triangle:public Shap
{
public:Triangle(double h,double w)
{
H=h;
W=w;
}
double Area()
{
return 0.5*H*W;
}
private:double H,W;
};
class Circle:public Shap
{
public:Circle(double r)
{
R=r;
}
double Area()
{
return PI*R*R;
}
private:double R;
};
double Total(Shap*s[],int n)
{
double sum=0;
for(int i=0;i<n;i++)
sum+=s[i]->Area();
}
return sum;
}
int main()
{
Shap*s[2];
s[0]=new Triangle(5.0,4.0);
s[1]=new Circle(8.0);
double sum=Total(s,2);
cout<<"sum="<<sum<<endl;
return 0;
}
(4)运行程序,输入数据,分析结果。
(5)将调试好的程序保存在自己的用户目录中,文件名自定。
2、算法描述及步骤如下:
(1)根据题目要求编写好程序代码并在VC环境下输入源程序。
(2)检查程序有无错误(包括语法错误和逻辑错误),有则改之。
(3)编译和连接,仔细分析编译信息,如有错误应找出原因并改正之。
本题改正后的代码如下:
#include<iostream.h>
const double PI=3.1415;
class Circle
{
public:virtual double V olume()=0;
};
class Sphere:public Circle
{
public:Sphere(double r)
{
R=r;
}
double V olume()
{
return 4*PI*R*R*R/3;
}
private:double R;
};
class Cylinder:public Circle
{
public:Cylinder(double r,double h)
{
R=r;
H=h;
double V olume()
{
return PI*R*R*H;
}
private:double R,H;
};
class Cone:public Circle
{
public:Cone(double r,double h)
{
R=r;
H=h;
}
double V olume()
{
return PI*R*R*H/3;
}
private:double R,H;
};
double Total(Circle*s[],int n)
{
double sum=0;
for(int i=0;i<n;i++)
{
sum+=s[i]->V olume();
}
return sum;
}
int main()
{
Circle*s[3];
s[0]=new Sphere(2.0);
s[1]=new Cylinder(2.0,4.0);
s[2]=new Cone(2.0,4.0);
double sum=Total(s,3);
cout<<"sum="<<sum<<endl;
return 0;
}
(4)运行程序,输入数据,分析结果。
(5)将调试好的程序保存在自己的用户目录中,文件名自定。
五、调试过程
1、调试程序,出现的截图如下:
2、调试程序,出现的错误截图如下:
六、实验结果
1、运行改正后的程序,结果截图如下:
问题解答:
(1)、抽象类是Shap类。
(2)、Shap类中的Area()函数为纯虚函数,它的作用是为派生类提供统一的求面积函数接口。
(3)、Shop类是为派生类提供统一的接口;Circle类的作用是求圆形的面积;Triangle类的作用是求三角形的面积;整个程序的的作用是计算三角形和圆形的面积之和。
2、运行改正后的程序,结果截图如下:
七、总结
1、了解静态联编和动态联编的概念。
2、更加熟悉虚函数的使用。