第六章作业内容(答案)
- 格式:doc
- 大小:71.00 KB
- 文档页数:17
第六章动态数列一、判断题二、1.若将某地区社会商品库存额按时间先后顺序排列,此种动态数列属于时期数列。
()三、2.定基发展速度反映了现象在一定时期内发展的总速度,环比发展速度反映了现象比前一期的增长程度。
()四、3.平均增长速度不是根据各期环比增长速度直接求得的,而是根据平均发展速度计算的。
()五、4.用水平法计算的平均发展速度只取决于最初发展水平和最末发展水平,与中间各期发展水平无关。
()六、5.平均发展速度是环比发展速度的平均数,也是一种序时平均数。
()1、×2、×3、√4、√5、√。
七、单项选择题八、1.根据时期数列计算序时平均数应采用()。
九、 A.几何平均法 B.加权算术平均法 C.简单算术平均法 D.首末折半法十、2.下列数列中哪一个属于动态数列()。
AHA12GAGGAGAGGAFFFFAFAF十一、 A.学生按学习成绩分组形成的数列 B.工业企业按地区分组形成的数列十二、 C.职工按工资水平高低排列形成的数列 D.出口额按时间先后顺序排列形成的数列十三、 3.已知某企业1月、2月、3月、4月的平均职工人数分别为190人、195人、193人和201人。
则该企业一季度的平均职工人数的计算方法为()。
十四、十五、AHA12GAGGAGAGGAFFFFAFAF4.说明现象在较长时期内发展的总速度的指标是()。
A、环比发展速度 B.平均发展速度 C.定基发展速度 D.环比增长速度5.已知各期环比增长速度为2%、5%、8%和7%,则相应的定基增长速度的计算方法为()。
A.(102%×105%×108%×107%)-100%B.102%×105%×108%×107%C.2%×5%×8%×7%D.(2%×5%×8%×7%)-100%6.定基增长速度与环比增长速度的关系是()。
第六章学习动机第二节习题作业一、名词解释1.强化2.正强化3.负强化4.强化的依随性强5.普雷马克原理6.固定时间间隔强化7.变化时间间隔强化8.固定比率强化9.变化比率强化10.认知好奇心11.成就动机12.归因13.习得性无力感14.自我效能感二、填空题1.行为主义的学习动机理论强调对学习的外部控制,认为 是激发学生学习的必要条件。
2.美国行为主义心理学派的代表人物 曾在特制的实验箱内研究了白鼠的学习。
3.强化程序可以分为 和 两大类。
4.根据强化与反应次数之间的关系,可将部分强化分为 和 。
5.人类在婴幼儿时期通常以三种方式的探究活动来表现他们的好奇心,这三种方式是:感官探究、 和 。
6.认知的好奇心分为 和 。
7.阿特金森认为,个人的成就动机可以分成两类,一类是 ,一类是。
8.成就动机的测量方法可以分为两大类:一类为,另一类为。
9.海德在其提出的归因理论中指出人的行为的原因可分为 和 。
10.罗特根据“控制的位置”把人划分成“ ”和“ ”。
11.由于连续的失败体验而导致的个体对行为结果感到无法控制、无能为力、自暴自弃的心理状态是 ,该现象最初由 通过实验发现。
三、判断下列各陈述的正误并说明理由1.负强化也叫消极强化是指当某一刺激消除或避免时所产生的行为降低的效果。
2.外部强化能提高动机水平,所以是万能的,应在实践中极力推崇。
3.马斯洛的需要层次论中的求知的需要属于基本需要。
4.维纳(Weiner,B)对成就行为的归因理论的研究影响最大,具有代表性。
5.根据无力感的归因理论。
外部归因会产生个人的无力感。
四、简答题1.根据实验说明外部强化的副作用。
2.简述马斯洛的需要层次论3.简述认知好奇心产生的条件和类型4.简单介绍“感觉剥夺实验”5.简述维纳的成就行为的归因理论6.简述学生的学业自我效能感受到哪些因素的影响。
参考答案:一、名词解释1.强化是指在行为发生频率或持续时间上的增加。
2.正强化也叫积极强化是指当某一刺激出现时所产生的行为增强的效果。
软件⼯程第6章-课后作业参考(附答案)第六章作业题参考答案3.画出下列伪码程序的程序流程图和盒图: STARTIF p THENWHILE q DO f END DO ELSEBLOCK g nEND BLOCK END IF STOP 答:(1)流程图如图6-1所⽰:图6-1从伪码变成的程序流程图(2)该程序的盒图如图6-2所⽰:图6-2 从伪码变成的程序盒图4.下图给出的程序流程图代表⼀个⾮结构化的程序,请问:(1)为什么说它是⾮结构化的?(2)设计⼀个等价的结构化程序。
(3)在(2)题的设计中你使⽤附加的标志变量flag吗?若没⽤,请再设计⼀个使⽤flag 的程序;若⽤了,再设计⼀个不⽤flag 的程序。
答:(1)通常所说的结构化程序,是按照狭义的结构程序的定义衡量,符合定义规定的程序。
图⽰的程序的循环控制结构有两个出⼝,显然不符合狭义的结构程序的定义,因此是⾮结构化的程序。
(2)使⽤附加的标志变量flag,⾄少有两种⽅法可以把该程序改造为等价的结构化程序,图6-3描绘了等价的结构化程序的盒图。
(a)解法1(b)解法2图6-3 与该图等价的结构化程序(⽤flag)(3)不使⽤flag把该程序改造为等价的结构化程序的⽅法如图6-4所⽰。
图6-4 与该图等价的结构化程序(不⽤flag)8.画出下列伪码程序的流图,计算它的环形复杂度。
你觉得这个程序的逻辑有什么问题吗?C EXAMPLELOOP:DO WHILE X>0A=B+1IF A>10THEN X=AELSE Y=ZEND IFIF Y<5THEN PRINT X,YELSE IF Y=2THEN GOTO LOOPELSE C=3END IFEND IFG=H+REND DOIF F>0THEN PRINT GELSE PRINT KEND IFSTOP答:(1)该伪码的流程图如图6-8所⽰:图6-8 程序流程图根据该程序流程图,可得该程序流图如图6-9所⽰:图6-9 程序流图环形复杂度V(G)=流图中的区域数=流图中判定结点数⽬+1=6+1=7 (判定结点为:1、3、6、8、10、11)(2)该算法问题在于控制最外层循环的变量Z不仅没有经过初始化,并且在该循环内部没有任何有可能该变Z的语句。
第六章 机械波作业及答案一、选择题1.频率为500Hz 的波,其波速为3601-⋅s m ,在同一波线上位相差为 60的两点的距离为 [ ](A );24.0m (B );48.0m (C );36.0m (D );12.0m2、一平面简谐波的波动方程为)(),3cos(1.0SI x t y πππ+-=,0=t 时刻的波形曲线如图所示,则 [ ](A)O 点的振幅为m 1.0-; (B) 波长为m 3;(C) a,b 两点间位相差为2π; (D) 波速为19-⋅s m .3、图为沿x 轴负方向传播的平面简谐波在t = 0时刻的波形.若波的表达式以余弦函数表示,则O 点处质点振动的初相为 [ ](A) 0. (B)π21. (C) π. (D) π23.4、一平面简谐波沿Ox 轴正方向传播,t = 0 时刻的波形图如图所示,则P 处介质质点的振动方程是 [ ](A))314cos(10.0π+π=t y P (SI).(B) )314cos(10.0π-π=t y P (SI).xyOu(C) )312cos(10.0π+π=t y P (SI).(D) )612cos(10.0π+π=t y P (SI).5、一平面简谐波沿x 轴负方向传播.已知 x = x 0处质点的振动方程为0cos()y A t ωϕ=+.若波速为u ,则此波的表达式为 (A) 00cos{[()/]}y A t x x u ωϕ=--+. (B) 00cos{[()/]}y A t x x u ωϕ=--+.(C) 00cos{[()/]}y A t x x u ωϕ=--+.(D) 00cos{[()/]}y A t x x u ωϕ=+-+. [ ]6、如图所示,S 1和S 2为两相干波源,它们的振动方向均垂直于图面,发出波长为λ 的简谐波,P 点是两列波相遇区域中的一点,已知 λ21=P S ,λ2.22=P S , 两列波在P 点发生相消干涉.若S 1的振动方程为 )212cos(1π+π=t A y ,则S 2的振动方程为 [ ](A) )212cos(2π-π=t A y . (B) )2cos(2π-π=t A y .(C))212cos(2π+π=t A y . (D))1.02cos(22π-π=t A y .二、计算题1 、已知一平面简谐波的表达式为 )37.0125cos(25.0x t y -= (SI) (1) 分别求x 1 = 10 m ,x 2 = 25 m 两点处质点的振动方程;(2) 求x 1,x 2两点间的振动相位差;2、某质点作简谐振动,周期为2 s ,振幅为0.06 m ,t = 0 时刻,质点恰好处在负向最大位移处,求S(1) 该质点的振动方程;(2) 此振动以波速u = 2 m/s 沿x 轴正方向传播时,形成的一维简谐波的波动表达式,(以该质点的平衡位置为坐标原点);(3) 该波的波长.3、一列平面简谐波在媒质中以波速u = 5 m/s 沿x 轴正向传播,原点O 处质元的振动曲线如图所示.(1) 求解并画出x = 25 m 处质元的振动曲线. (2) 求解并画出t = 3 s 时的波形曲线.4.一横波方程为 )(2cosx ut A y -π=λ, 式中A = 0.01 m ,λ = 0.2 m ,u = 25 m/s ,求t = 0.1 s 时在x = 2 m 处质点振动的位移、速度、加速度.6 一平面简谐波0=t 时的波形如图所示,且向右传播,波速为,2001-⋅=s m u ,试求 (1)o 点的振动表达式; (2)波的表达式;(3)m x 3=处的P 点振动表达式。
第六章维生素和辅酶(作业答案)一、名词解释1.维生素(vitamin):是一类动物本身不能合成,但对动物生长和健康又是必需的有机物,所以必需从食物中获得。
许多辅酶都是由维生素衍生的。
2.水溶性维生素(water-soluble vitamin):一类能溶于水的有机营养分子。
其中包括在酶的催化中起着重要作用的B族维生素以及抗坏血酸(维生素C)等。
3.脂溶性维生素(lipid vitamin):由长的碳氢链或稠环组成的聚戊二烯化合物。
脂溶性维生素包括A,D,E,和K,这类维生素能被动物贮存。
二、填空题1.维生素是维持生物体正常生长所必需的一类微量_有机物质。
主要作用是作为_ 辅酶_的组分参与体内代谢。
2.根据维生素的溶解_性质,可将维生素分为两类,即_水溶性维生素和_脂溶性维生素。
3.维生素A的活性形式是_11-顺视黄醛,可与视蛋白组成视紫红质,后者是维持暗视觉所必需的。
4.维生素D在体内的主要作用是调节钙磷代谢,与骨骼生长有关。
5.维生素B5(PP)是吡啶衍生物,有烟酸,烟酰胺两种形式,其辅酶形式是 NAD+与NADP+,作为脱氢酶的辅酶,起递氢作用。
6.维生素在体内的活性形式有两种,即黄素单核苷酸FMN 和黄素腺嘌呤二苷酸FAD ,它们是体内氧化还原酶,在生物氧化过程中起着传递氢体的作用。
7.嘧啶;噻唑;亚甲基;TPP;脱羧酶;转酮酶8.二甲基异咯嗪基;核糖醇基;1,10位氮9.丁酸衍生物;β-丙氨酸;酰胺键;巯基乙胺;焦磷酸;3’-AMP;CoA;酰化;酰基10.尿素;噻吩;戊酸侧链;羧化酶;CO211.金属元素;咕啉环;核苷酸;5’-脱氧腺苷钴胺素;甲基钴胺素12.羟化;解毒三、单选题1.(B) CoQ不属于维生素,CoA是维生素B3的衍生物,NADP是维生素B5(PP)的衍生物,FMN是维生素B2的衍生物。
2.(E)肠道细菌可以合成维生素K,但不能合成维生素A、C、D、E3.(C)很多辅酶不包含维生素组分,如CoQ等。
班级学号姓名第六章酶学作业一.选择1.下列对酶的叙述,哪一项是正确的?A.所有的蛋白质都是酶;B.所有的酶均以有机化合物作为底物C.所有的酶均需特异的辅助因子;D.所有的酶对其底物都是有绝对特异性E.少数RNA具有酶一样的催化活性2. 以下哪项不是酶的特点A.多数酶是细胞制造的蛋白质;B.易受pH,温度等外界因素的影响C.只能加速反应,不改变反应平衡点;D.催化效率极高;E.有高度特异性3.结合酶在下列哪种情况下才有活性A. 酶蛋白单独存在B.辅酶单独存在;C.亚基单独存在D.全酶形式存在;E.有激动剂存在4.下列哪种辅酶中不含核苷酸A.FAD B.FMN C.FH4 D.NADP+E.CoASH5.340nm紫外光有吸收特性的辅酶是A.FADH2 B.NAD+ C.FMN D.TPP E.NADH6.辅酶的作用机理主要在于A.维持酶蛋白的空间构象;B.构成酶的活性中心;C.在酶与底物的结合中起桥梁作用D.在酶促反应中起运载体的作用;E.辅酶为小分子物质有利于酶在介质中发挥酶促作用7.下列哪种酶含辅助因子Cu2+A.黄嘌呤氧化酶B.细胞色素氧化酶C.过氧化氢酶D.脲酶E.谷胱甘肽过氧化物酶8.酶保持催化活性,必须A.酶分子完整无缺B.有酶分子上所有化学基团存在C.有金属离于参加D.有辅酶参加E.有活性中心及其必需基团9.酶催化作用所必需的基团是指A.维持酶一级结构所必需的基团B.位于活性中心以内或以外的,维持酶活性所必需的基团C.酶的亚基结合所必需的基团D.维持分子构象所必需的基团E.构成全酶分子所有必需的基团10.酶分子中使底物转变为产物的基团称为A.结合基团B.催化基团C.碱性基团D.酸性基团E.疏水基团11.胰蛋白酶原的激活是由其N-端切除A.2肽B.4肽C.6肽D.8肽E.10肽12.有关同工酶的正确叙述是A.不同组织中同工酶谱不同B.同工酶对同种底物亲和力相同C.同工酶的一级结构一定相同D.组成同工酶的亚基一定相同E.组成同工酶的亚基一定不同13.含LDH5丰富的组织是A,肝组织B.心肌C.红细胞D.肾组织E.脑组织14.乳酸脱氢酶同工酶是由H、M亚基组成的A.二聚体B.三聚体C.四聚体D.五聚体E.六聚体15.关于变构酶的结构特点的错误叙述A.有多个亚基组成B.有与底物结合的部位C.有与变构剂结合的部位D.催化部位与别构部位都处于同一亚基上E.催化部位与别构部位既可处于同一亚基,也可处于不同亚墓上16.关于变构剂的错误叙述是A.可与酶分子上别构部位结合B.可使酶与底物亲和力增强C.可使酶与底物亲和力降低D.可使酶分子的空间构象改变E.无以上作用17.关于酶促反应特点的错误描述是A酶能加速化学反应B.酶在生物体内催化的反应都是不可逆的C酶在反应前后无质和量的变化D酶对所催化的反应有选择性E能缩短化学反应到达反应平衡的时间18.在形成酶-底物复合物时A.酶的构象和底物构象都发生变化B.主要是酶的构象发生变化C.主要是底物的构象发生变化D.主要是辅酶的构象发生变化E.酶和底物构象都不发生变化19.其他因素不变,改变底物的浓度时A.反应初速度成比例改变B.反应速度成比例下降C.反应速度成比例增加D.反应速度先慢后快E.反应速度不变20.在酶浓度不变的条件下,以反应速度V-对底物[S]作图,其图像为:A.直线B.S形曲线C.矩形双曲线D.抛物线E.钟罩形曲线21.底物浓度达到饱和后,再增加底物浓度A.反应速度随底物增加而加快B.随着底物浓度的增加酶逐渐失活C.酶的结合部位全部被底物占据,反应速度不再增加D.增加抑制剂,反应速度反而加快E.形成酶-底物复合体增加22.Km是A.饱和底物浓度时的反应速度B.是最大反应速度时的底物浓度C.饱和底物浓度50%时的反应速度D.50%最大反应速度时的底物浓度E.降低反应速度一半时的底物浓度23.酶的Km值大小与A.酶性质有关B.酶浓度有关C.酶作用温度有关D.酶作用时间有关E.酶的最适pH有关25.能使唾液淀粉酶活性增强的离子是A.氯离子B.锌离子C.碳酸氢根离子D.铜离子E.锰离于26.各种酶都具有最适PH,其特点是A.最适pH一般即为该酶的等电点B.最适pH时该酶活性中心的可解离基团都处于最适反应状态C.最适pH时酶分子的活性通常较低D.大多数酶活性的最适州曲线为抛物线形E.在生理条件下同一细胞酶的最适pH均相同27.属于不可逆性抑制作用的抑制剂是A.丙二酸对琥珀酸脱氢酶的抑制作用B.EDTA对金属活化酶类的抑制作用C.磺胺药类对细菌二氢叶酸还原酶的抑制作用D.麦芽糖对淀粉酶水解淀粉的抑制作用E.反应产物对酶的反馈抑制28.对可逆性抑制剂的描述,哪项是正确的A.使酶变性失恬的抑制剂B.抑制剂与酶是共价键相结合C.抑制剂与酶是非共价健结合D.抑制剂与酶结合后用透析等物理方法不能解除抑制E.可逆性抑制剂即指竞争性抑制29.丙二酸对琥珀酸脱氢酶的抑制作用是A.反馈抑制B.非竞争抑制C.竞争性抑制D.非特异性抑制E.反竞争性抑制30.反竞争性抑制剂具有下列哪一种动力学效应A.使Km值升高,Vmax不变B.使Km值降低Vmax不变C.使Km值不变,Vmax升高D.使Km值不变Vmax降低E.使Km值和Vmax均降低31.酶活性是指A.酶所催化的反应B.酶与底物的结合力C.酶自身的变化D.无活性的酶转变成有活性的酶E.酶的催化能力32.纯化酶制剂时,酶纯度的主要指标是A.蛋白质浓度B.酶量C.酶的总活性D.酸的比活性E.酶的理化性质33.有关酶的以下描述哪项是正确的A.同工酶是一组功能与结构相同的酶B.诱导酶是指细胞中固有而含量又多的酶C.在酶的活性中心中只有侧链带电荷的氨基酸直接参与酶的催化反应D.酶催化反应初速度取决于酶的浓度E.非竞争性抑制剂只能改变酶促反应V,而不改变该酶Km值34.酶的活性中心是指:A.酶分子上含有必需基团的肽段B.酶分子与底物结合的部位C.酶分子与辅酶结合的部位D.酶分子发挥催化作用的关键性结构区35.酶催化作用对能量的影响在于:A.增加产物能量水平B.降低活化能C.降低反应物能量水平D.降低反应的自由能E.增加活化能36.竞争性抑制剂作用特点是:A.与酶的底物竞争激活剂B.与酶的底物竞争酶的活性中心C.与酶的底物竞争酶的辅基D.与酶的底物竞争酶的必需基团;E.与酶的底物竞争酶的变构剂37.竞争性可逆抑制剂抑制程度与下列那种因素无关:A作用时间;B抑制剂浓度;C底物浓度;D酶与抑制剂的亲和力的大小;E酶与底物的亲和力的大小38.哪一种情况可用增加[S]的方法减轻抑制程度:A.不可逆抑制作用B.竞争性可逆抑制作用C.非竞争性可逆抑制作用D.反竞争性可逆抑制作用E.无法确定39.酶的竞争性可逆抑制剂可以使:A.Vmax减小,Km减小;B.Vmax增加,Km增加;C.Vmax不变,Km增加;D.Vmax不变,Km减小;E.Vmax减小,Km增加40.下列常见抑制剂中,除哪个外都是不可逆抑制剂:A 有机磷化合物B 有机汞化合物C 有机砷化合物D 氰化物E 磺胺类药物41.酶的活化和去活化循环中,酶的磷酸化和去磷酸化位点通常在酶的哪一种氨基酸残基上:A.天冬氨酸B.脯氨酸C.赖氨酸D.丝氨酸E.甘氨酸42.在生理条件下,下列哪种基团既可以作为H+的受体,也可以作为H+的供体:A.His的咪唑基B.Lys的ε氨基C.Arg的胍基D.Cys的巯基E.Trp的吲哚基43.对于下列哪种抑制作用,抑制程度为50%时,[I]=Ki :A不可逆抑制作用;B竞争性可逆抑制作用;C非竞争性可逆抑制作用;D反竞争性可逆抑制作用;E无法确定44.下列辅酶中的哪个不是来自于维生素:A.CoA;B.CoQ;C.PLPD;.FH2;E.FMN45.下列叙述中哪一种是正确的:A.所有的辅酶都包含维生素组分;B.所有的维生素都可以作为辅酶或辅酶的组分C.所有的B族维生素都可以作为辅酶或辅酶的组分;D.只有B族维生素可以作为辅酶或辅酶的组分46.多食糖类需补充:A.维生素B1;B.维生素B2;C.维生素B5;D.维生素B6;E.维生素B7 47.多食肉类,需补充:A.维生素B1;B.维生素B2;C.维生素B5;D.维生素B6;E.维生素B7 48.以玉米为主食,容易导致下列哪种维生素的缺乏:A.维生素B1;B.维生素B2;C.维生素B5;D.维生素B6;E.维生素B749.下列化合物中除哪个外,常作为能量合剂使用:A.CoA;B.ATP;C.胰岛素;D.生物素50.下列化合物中哪个不含环状结构:A.叶酸B.泛酸C.烟酸D.生物素E.核黄素51.下列化合物中哪个不含腺苷酸组分:A.CoA;B.FMN;C.FAD;D.NAD+;E.NADP+52.需要维生素B6作为辅酶的氨基酸反应有:A成盐、成酯和转氨;B成酰氯反应;C烷基化反应;D成酯、转氨和脱羧;E转氨、脱羧和消旋二.判断( )1. 酶实际上催化所有生物学上重要的生物化学反应。
第六章树和二叉树作业一、选择题(每题2分,共24分)。
1. 一棵二叉树的顺序存储情况如下:树中,度为2的结点数为( C )。
A.1 B.2 C.3 D.42. 一棵“完全二叉树”结点数为25,高度为(B )。
A.4 B.5 C.6 D.不确定3.下列说法中,(B )是正确的。
A. 二叉树就是度为2的树B. 二叉树中不存在度大于2的结点C. 二叉树是有序树D. 二叉树中每个结点的度均为24.一棵二叉树的前序遍历序列为ABCDEFG,它的中序遍历序列可能是(B )。
A. CABDEFGB. BCDAEFGC. DACEFBGD. ADBCFEG5.线索二叉树中的线索指的是(C )。
A.左孩子 B.遍历 C.指针 D.标志6. 建立线索二叉树的目的是(A )。
A. 方便查找某结点的前驱或后继B. 方便二叉树的插入与删除C. 方便查找某结点的双亲D. 使二叉树的遍历结果唯一7. 有 D )示意。
A.B.C.D.8. 一颗有2046个结点的完全二叉树的第10层上共有(B )个结点。
A. 511B. 512C. 1023D. 10249. 一棵完全二叉树一定是一棵(A )。
A. 平衡二叉树B. 二叉排序树C. 堆D. 哈夫曼树10.某二叉树的中序遍历序列和后序遍历序列正好相反,则该二叉树一定是( C )的二叉树。
A .空或只有一个结点B .高度等于其结点数C .任一结点无左孩子D .任一结点无右孩子11.一棵二叉树的顺序存储情况如下:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15A B C D E 0 F 0 0 G H 0 0 0 X结点D 的左孩子结点为( D )。
A .EB .C C .FD .没有12.一棵“完全二叉树”结点数为25,高度为( B )。
A .4B .5C .6D .不确定二、填空题(每空3分,共18分)。
1. 树的路径长度:是从树根到每个结点的路径长度之和。
对结点数相同的树来说,路径长度最短的是 完全 二叉树。
第六章习题答案2. 设P = {< 1, 2 >, < 2, 4 >, < 3, 3 >},Q = {< 1, 3 >, < 2, 4 >, < 4, 2 >}找出P⋃Q, P⋂Q, dom(P), dom(Q), ran(P)及ran(Q),并证明:dom(P ⋃ Q) = dom(P) ⋃ dom(Q)ran(P⋂ Q) ⊆ ran(P) ⋂ ran(Q)解P ⋃ Q ={< 1, 2 >, < 2, 4 >, < 3, 3 >, < 1, 3 >, < 4, 2 >},P ⋂ Q ={< 2, 4 >}dom(P)={1, 2, 3},dom(Q)= {1, 2, 4},ran(P) = {2, 3, 4},ran(Q) = {2, 3, 4}。
x∈ dom(P⋃Q)⇔∃y (< x, y > ∈ P ⋃ Q)⇔∃y (< x, y > ∈ P∨ < x, y > ∈ Q)⇔∃y (< x, y > ∈ P) ∨∃y (< x, y > ∈ Q)⇔ x∈ dom(P) ∨ x∈ dom(Q)⇔ x∈ dom(P) ⋃ dom(Q)y∈ ran(P⋂ Q)⇔∃x (< x, y > ∈ P⋂Q)⇔∃x (< x, y > ∈ P ∧ < x, y > ∈ Q)⇒∃x (< x, y > ∈ P) ∧∃x (< x, y > ∈ Q)⇔y∈ ran(P) ∧ y∈ ran(Q)⇔y∈ ran(P) ⋂ ran(Q)如上例,ran(P⋂ Q) = {4}⊂ {2, 3, 4} = ran(P) ⋂ ran(Q)3. 若关系R和S自反的,对称的和传递的,证明:R⋂S也是自反的,对称的和传递的。
第六章作业内容一、选择题1.运算符重载时不需要保持的性质是:( A )A.操作数类型B.操作数个数C.优先级D.结合性理由:操作数实际上对应的是重载函数的参数,按照重载函数的定义,其构成的条件是参数不同,对于运算符来说,要求其操作数个数必须相同,就是参数个数相同,因此就需要要求参数类型不同,即操作数类型不同。
2.在C++中,要实现动态联编,必须使用(D)调用虚函数。
A.类名B.派生类指针C.对象名D.基类指针理由:3. 有如下类定义和变量定义:#include<iostream.h>class X{int a;void setX (int x){a=x;}public:void showX(){cout<<"a="<<a<<endl;}};class Y: private X{/*类定义省略*/};class Z: public X{/*类定义省略*/};Y objY;Z objZ;下列语句中正确的是:( D )A.objY.setX(3);B.objY.showX();C.objZ.setX(4);D.objZ.showX();理由:因为类Y,Z对X的继承方式不同,Y对X 是私有继承,Z 对X 是公有继承,导致了X类的成员都是Y类的私有成员,而X 类的成员在Z类中的访问方式都和在X类中一样不变。
因此,setX、showX都是Y类的私有成员,所以Y类的对象objY不能直接访问setX、showX;setX是Z类的私有成员,showX是Z类的公有成员,所以Z类的对象objZ可以直接访问showX,而不能访问setX函数;4. 有如下类定义:#include<iostream.h>class A{ int xx;public:A():xx(0){cout<<'A';}A(int n):xx(n){cout<<'B';}};class B: public A{ int yy;public:B():yy(0){cout<<yy;}B(int n):A(n+1),yy(n){cout<<yy;}B(int m,int n):A(m),yy(n){cout<<yy;}};下列选项中,输出结果为A0的语句是:( D )A.B y1(0,0);B.B y2(1);C.B y3(0);D.B y4;理由:要使输出结果为A0,主要看定义的派生类对象B调用的是哪一个构造函数(基类和派生类),分析构造函数:基类构造函数中,默认构造函数输出“A”,即调用无惨构造函数派生类构造函数中,没有给基类传递参数的是默认构造函数,且输出“0”所以,定义对象的语句一定没有参数,即B y4;5.己知表达式a++中的“++”是作为友元函数重载的运算符,则与a++等效的运算符函数调用形式为:( C )A.a .orerator++(1);B.operator++(a);C.operator++(a, 0);D.a.operator++(a, 0 );理由:既然是友元函数,a++又是后置++运算符,所以其运算符重载函数有两个参数,一个是当前对象,一个是后置标志,多一个int类型参数。
调用的形式是:a++; 或operator++(a,0);所以,选择(C).其他选项:6.下列函数中,不能说明为虚函数的是(C)。
A.私有成员函数B.公有成员函数C.构造函数D.析构函数理由:7.以下基类中的成员函数,哪个表示纯虚函数(C)。
A.virtual void vf(int);B.void vf(int)=0;C.virtual void vf( )=0;D.virtual void vf(int){ } 理由:8.类定义如下。
class A{public:virtual void func1( ){ }virtual void func2( ){ }};class B:public A{public:void func1( ) {cout<<”class B func1”<<endl;}virtual void func2( ) {cout<<”class B func2”<<endl;}};则下面正确的叙述是(A)A.A::func2( )和B::func1( )都是虚函数B.A::func2( )和B::func1( )都不是虚函数C.B::func1( )是虚函数,而A::func2( )不是虚函数D.B::func1( )不是虚函数,而A::func2( )是虚函数理由:9.C++中多态性包括两种多态性:编译时的和运行时的,前者是通过______来实现的(A)A.函数和运算符的重载B.类继承关系C.虚函数D.抽象类理由:10.下列关于虚函数的说明中,正确的是(B)。
A.从虚基类继承的函数都是虚函数B.虚函数不能是静态成员函数C.只能通过指针或引用调用虚函数D.抽象类中的成员函数都是虚函数理由:11.下列运算符中,________运算符不能重载为成员函数。
C A.赋值运算符= B.函数调用运算符( ) C.输出运算符<< D.后置++理由:输出运算符<<的第一个操作数不是当前类的对象,按照C++语言规定,这种情况只能定义为友元运算符重载函数。
12.类B是类A的公有派生类,类A和类B中都定义了虚函数func( ),p是一个指向类A对象的指针,则p->A::func( )将(A)。
A.调用类A中的函数func( )B.调用类B中的函数func( )C.根据p所指的对象类型而确定调用类A中或类B中的函数func( )D.既调用类A中函数,也调用类B中的函数理由:二、问答题:1.是否使用了虚函数就能实现运行时的多态性?怎样才能实现运行时的多态性?答:不是。
首先要在基类中定义虚函数,并在其派生类中定义重名的虚函数。
派生类一定以公有方式继承了基类。
实现运行时的多态性时,必须使用基类类型的指针变量或引用,使该指针指向该基类的不同派生类的对象,并通过该指针指向虚函数,才能实现动态的多态性。
2.为什么析构函数总是要求说明为虚函数?答:在基类中及其派生类中都动态分配内存空间时,必须把析构函数定义为虚函数,实现撤消对象时的多态性。
根据赋值兼容规则可以用基类的指针指向派生类对象,如果由该指针撤销派生类对象,未将析构函数说明为虚函数,则会调用基类的析构函数,使对象释放不完全。
因此必须将析构函数说明为虚函数,实现多态性,自动调用派生类析构函数,使得所定义的派生类对象得到完全的释放。
3. 存在这样的抽象类吗?该类定义中并没有定义纯虚函数。
答:存在这样的抽象类,该类继承的基类中定义了纯虚函数,而该类定义中没有重新定义纯虚函数,但该类继承了纯虚函数,所以该类也存在纯虚函数,所以也是抽象类。
4.定义虚函数的目的是什么?定义纯虚函数有什么作用?答:定义虚函数的目的是实现动态多态性;作用是定义纯虚函数的目的在于基类给派生类提供一个标准的函数原型,统一接口,为实现动态多态性打下基础,派生类将根据需要给出纯虚函数的具体实现代码。
三、读程序按要求做题1.以下程序如果将Point类的析构函数定义为虚函数,输出结果是什么?试分析原因#include<iostream>using namespace std;class Point{public:Point(float a,float b):x(a),y(b){}~Point(){cout<<"executing Point destructor"<<endl;}private:float x;float y;};class Circle:public Point{public:Circle(int a,int b,int r):Point(a,b),radius(r){}~Circle (){cout<<"execting Circle destructor"<<endl;}private:float radius;};int main(){Point*p=new Circle(2.5,1.8,4.5);delete p;return 0;}原运行结果为:executing Point destructorPress any key to continue修改后运行结果为:execting Circle destructorexecuting Point destructorPress any key to continue原因:指针p是指向派生类的基类指针,在不生命析构函数为虚函数时,编译器实施静态绑定,在删除基类指针时,只调用指针所属的基类的析构函数,而不调用派生类的析构函数,析构不完全,出现最初的运行结果。
而将基类的析构函数声明为虚函数,删除该在指针时,就会实现动态多态性,调用该指针指向的派生类的析构函数,而派生类的析构函数又会自动调用基类的析构函数,使整个对象完全释放,出现修改后的运行结果。
2.找出下面程序运行结果错误的原因(未按++、--运算符的要求做),并改正。
#include<iostream.h>class coord{int x,y;public:coord(int i=0,int j=0);void print();friend coord & operator++(coord op);//};coord::coord(int i,int j){x=i;y=j;}void coord::print(){cout<<" x:"<<x<<",y:"<<y<<endl;}coord & operator ++(coord op)//{ ++op.x;++op.y;return op;}main(){ coord ob(10,20);ob.print();++ob;//ob.print();operator++(ob);//ob.print();return 0;答:错误在于++重载函数改变了原来的++应该实现的功能。
因为++运算的实际意义是改变其作用的变量(操作数)的值,所以一定要考虑传递的参数必须被改变(即必须是传地址(指针/引用)),否则就没有实现原来++的功能。
因此,该程序需要修改的语句为:friend coord & operator++(coord op); 修改为:friend coord & operator++(coord &op);coord & operator ++(coord op)// 修改为:coord & operator ++(coord &op)3.读下列程序,按要求做题#include<iostream.h>class B0{public:void display(){cout<<"B0::display()"<<endl;};};class B1:public B0{public:void display(){cout<<"B1::display()"<<endl;};};class D1:public B1{public:void display(){cout<<"D1::display()"<<endl;};};void main(){B0 b0,*p;B1 b1;D1 d1;p=&b0;p->display();p=&b1;p->display();p=&d1;p->display();}如果把B0修改如下:Class B0{public:void virtual display()=0;将主函数修改为:void main(){B0 *p;B1 b1;D1 d1;p=&b0;p->display();p=&b1;p->display();p=&d1;p->display();}运行结果结果分别为什么,并分析原因。