东北大学21年1月考试《软件设计模式》考核作业A

上传人:Q****0 文档编号:160669490 上传时间:2021-01-11 格式:DOC 页数:6 大小:117.50KB
返回 下载 相关 举报
东北大学21年1月考试《软件设计模式》考核作业A_第1页
第1页 / 共6页
东北大学21年1月考试《软件设计模式》考核作业A_第2页
第2页 / 共6页
亲,该文档总共6页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《东北大学21年1月考试《软件设计模式》考核作业A》由会员分享,可在线阅读,更多相关《东北大学21年1月考试《软件设计模式》考核作业A(6页珍藏版)》请在金锄头文库上搜索。

1、东 北 大 学 继 续 教 育 学 院 软件设计模式 试 卷(作业考核 线上2) A 卷学习中心: 网考咨询 院校学号: 加扣:2168254948 姓名 (共 5 页) 总分题号一二三四五六七八九十得分一、单选题(共40分,20小题,每小题2分。)1. 以下标识符中,正确的是: AA._nName B.sizeof C.16A D.xl02. 在c#程序中,入口函数的正确声明为: BA. static int main().B. static void Main()C.static void main()D.void Main()3. 在C#中,引用命名空间system 的正确语句是: AA

2、. using System;B. #import;C. uses System;D. #include;4. 在C#中,表示一个字符串的变量应使用以下哪条语句定义? BA. CString str; B. string str; C. Dim str as string D. char * str; 5. 结构化程序设计的3种结构是: DA. 顺序结构、if结构、for结构B. if结构、ifelse结构、else if结构C. while结构、dowhile结构、foreach结构D. 顺序结构、分支结构、循环结构6. 能正确表示逻辑关系“a=10 或a=10 or a=10|a=10&a

3、=10|a=0 7. 分析下列程序:Dpublic class class4private string _sData = ;public string sDataset_sData = value; 在Main 函数中,在成功创建该类的对象obj 后,下列哪些语句是合法的? A. obj.sData = It is funny!; B. Console.WriteLine(obj.sData); C. obj._sData = 100; D. obj.set(obj.sData); 8. 在类的外部可以被访问的成员是: AA、public成员 B、private成员C、protected成员

4、D、protected internal成员9. 在定义类时,如果希望类的某个方法能够在派生类中进一步进行改进,以处理不同的派生类的需要,则应将该方法声明成_C_。A. sealed 方法B. public 方法C. visual 方法D. override 方法10. 关于结构类型,下列说法哪些是正确的? AA. 结构是值类型B. 结构中不允许定义带参数的实例构造函数;C. 结构中不允许定义析构函数D. 结构中可以定义成员方法,但是方法内不能使用this 指针11. 判断下列类MyClass 的定义中哪些是合法的抽象类? CA. abstract class MyClass public a

5、bstract int getCount(); B. abstract class MyClass abstract int getCount(); C. private abstract class MyClass abstract int getCount(); D. sealed abstract class MyClass abstract int getCount(); 12. C#中执行下列语句后整型变量X和Y的值是多少? B Int x = 100; Int y = +x;A. x = 100 y = 100B. x = 101 y = 100C. x = 100 y = 101

6、 D. x =101 y = 10113. 在编写c#程序时,若需要对一个数组中的所有元素进行处理,则使用_循环体最好? AA. while循环B. for each 循环C. do循环D. for 循环14. 下面是几条动态初始化二维数组的语句,指出其中正确的:D A. int arr5=new int4,5;B. int arr6 = new int4, 5;C. int arr7,=new int4,5;D. int, arr8=new int4,5;15. 下面有关析构函数的说法中,不正确的是: DA. 析构函数中不可以包含return语句B. 一个类中只能有一个析构函数C. 析构函数

7、在对象被撤销时,被自动调用D. 用户可以定义有参析构函数16. 下列说法哪个正确? BA. 不需要定义类,就能创建对象B. 属性可以定义为抽象的C. 对象中必须有属性和方法D. 常量不能作为类成员17. 下面有关静态方法的描述中,正确的是: CA. 静态方法属于类,不属于实例B. 静态方法可以直接用类名调用C. 静态方法中,可以访问非静态的局部变量D. 静态方法中,可以访问静态的变量18. 以下描述错误的是:AA. 在C+中支持抽象类,但在C#中不支持抽象类。B. C+中可在头文件中声明类的成员,而在CPP文件中定义类的成员;在C#中没有头文件并且在同一处声明和定义类的成员。C. 在C#中可使

8、用 new 修饰符显式隐藏从基类继承的成员。D. 在C#中要在派生类中重新定义基类的虚函数必须在前面加Override。19. 下列关于构造函数的描述正确的是:CA. 构造函数可以声明返回类型。B. 构造函数不可以用private修饰C. 构造函数必须与类名相同D. 构造函数不能带参数20. 变量x的值为25,要输出x的值,下列正确的语句是:CA. System.Console.writeline(“x”)B. System.Console.WriteLine(“x”)C. System.Console.writeline(“x=0”,x)D. System.Console.writeline

9、(“x=x”)二:判断题(共20分,20小题,每小题1分。正确表示,错误表示)1. 软件危机与软件本身的特点有关。( )2. 结构化程序设计的3种基本结构是顺序、循环和选择。( )3. 面向数据流的设计以面向对象分析阶段的数据流图为基础。( )4. 软件测试方法主要白盒测试和黑盒测试两种。( )5. 螺旋模型包括制定计划、概要设计,详细设计和工程实施四个主要部分。( )6. 变换型数据流图的一般步骤是分析数据、变换数据、打印结果。( )7. 对象通过封装实现信息隐藏,封装的目的就是阻止非法访问。( )8. 在面向对象方法中,对象是对类的抽象,特殊类是对一般类的抽象。( )9. 面向过程方法的缺

10、点是过程和数据结合的过于紧密。( )10. 高耦合是优秀设计的重要标准,有助于使得系统中各部分之间联系紧密。( )11. 消息可以用顺序图和协作图这两种图来表示。( )12. 状态图、顺序图、协作图和部署图属于动态建模机制。( )13. 顺序图描述系统中对象间通过消息进行的交互,强调消息在时间轴上的先后顺序。( )14. 提倡设计模式的根本原因是增强代码复用,增加可维护性。( )15. 里氏代换原则的本质是在同一个继承体系中的对象应该有共同的行为特征。( )16. 工厂方法是抽象工厂模式的扩展。()17. 提倡设计模式的根本原因是增强代码复用,增加可维护性。( )18. 抽象类不可以被实例化。

11、( )19. 当创建派生类对象时,先执行基类的构造函数,后执行派生类的构造函数。( )1. 虚函数是可由子类继承并重写的函数。( )三:简答题(共25分,5小题, 每小题5分。)1. 软件危机的主要表现有哪些?答:软件需求增长得不到满足软件生产高成本、价格昂贵 软件生产进度无法控制 软件需求定义不准确 软件质量不易保证 软件可维护性差2. 试简述瀑布模型。答:瀑布模型将软件生命周期划分为制定计划、需求分析、软件设计、程序编写、软件测试和运行维护等六个基本活动,并且规定了它们自上而下、相互衔接的固定次序。如同瀑布流水,逐级下落。 每个阶段都会产生循环反馈:下一阶段信息未被覆盖或发现问题,可返回上

12、一阶段进行修改。3. 简述建立动态模型时,构造事件跟踪图的方法。答:事件跟踪图能形象、清晰地表示事件序列以及事件与对象的关系。在事件跟踪图中,一条竖线代表一个类和对象,每个事件用一条水平的箭头线表示,箭头方向从事件的发送对象指向接受对象。事件按照先后顺序排列,时间从上向下递增。4. 设计模式的基本要素有哪些?答:设计模式的基本要素包括:(1)模式名称:一个助记名,它用一两个词来描述模式的问题、解决方案和效果。(2)问题:描述了应该在何时使用模式。解释设计问题和问题存在的前因后果,它可能描述了特定的设计问题,也可能描述了导致设计方案不灵活的类或对象结构。(3)解决方案:描述设计的组成成分,它们之

13、间的相互关系及各自的职责和协作方式。解决方案一般并不描述特定而具体的设计或实现,而是提供设计问题的抽象描述和怎样用一个具有一般意义的元素组合(类或对象组合)来解决这个问题。 (4)效果:描述了模式应用的效果及使用模式应权衡的问题。因为复用是面向对象设计的要素之一,所以模式效果包括它对系统的灵活性、扩充性或可移植性的影响。5. 什么是创建型设计模式,它的目的是什么?答:创建型设计模式就是用来创建对象的模式,抽象了实例化的过程。创建型模式的目的将具体的对象的实例化操作封装起来,客户端只了解自己需要某个实例,但不必了解该实例的创建过程。这体现了面向对象设计方法中“高内聚,低耦合”的设计原则。四:综合

14、题(共15分)1. 试举一个例子并设计类适配器模式的UML结构图。(7分)2.2. 定义一个抽象的运动员(Player)基类,具有抽象方法Train方法。然后以该类为基类,派生出BasketballPlayer、FootballPlayer等类。(8分)/ 抽象类:运动员public abstract class Playerpublic abstract void Train();public class BasketballPlayer : Playerpublic override void Train() Console.WriteLine(Basketball players are training.);public class FootballPlayer : Playerpublic override void Train()

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 习题/试题

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号