东大21秋《软件设计模式》在线平时作业2[答案]答案
《软件设计模式》在线平时作业2
试卷总分:100 得分:100
一、单选题 (共 10 道试题,共 50 分)
1.以下关于类和对象的说法中,不正确的是:
A.类包含了数据和对数据的操作
B.一个对象一定属于某个类
C.类是同一类对象的抽象
D.可由抽象类生成对象
正确答案:-----
2.在C#中,表示一个字符串的变量应使用以下哪条语句定义?( )
A.CString str;
B.string str;
C.Dim str as string
正确答案:-----
D.char * str;
正确答案:-----
3.下列语句创建了多少个string 对象?
string[,] strArray = new string[3][4];
A.0
B.3
C.4
D.12
正确答案:-----
4.C#的数据类型有( )
A.值类型和调用类型;
B.值类型和引用类型;
C.引用类型和关系类型;
D.关系类型和调用类型;
正确答案:-----
5.C#中每个int 类型的变量占用______个字节的内存。
A.1
B.2
C.4
D.8
正确答案:-----
6.结构化程序设计的3种结构是:
A.顺序结构、if结构、for结构
B.if结构、if…else结构、else if结构
C.while结构、do…while结构、foreach结构
正确答案:-----
D.顺序结构、分支结构、循环结构
正确答案:-----
7.C#中MyClass 为一自定义类,其中有以下方法定义public void Hello(){..}使用以下语句创建了该类的对象,并使变量obj 引用该对象:MyClass obj = new MyClass();那么,可如何访问类MyClass 的Hello 方法
正确答案:-----
A.obj.Hello()
B.obj::Hello();
C.MyClass.Hello();
D.MyClass::Hello();
正确答案:-----
8.分析下列程序中类MyClass 的定义
class BaseClass
{
public int i;
}
class MyClass:BaseClass
{
public new int i;
}
则下列语句在Console 上的输出为_______.
MyClass y = new MyClass();
BaseClass x = y;
x.i = 100;
Console.WriteLine("{0}, {1}",x.i,y.i);
A.0,0
B.100,100
C.0,100
D.100,0
正确答案:-----
9.分析下列C#语句,注意类MyClass 没有访问修饰符:
namespace ClassLibrary1
{
class MyClass
{
public class subclass
{
int i;
}
}
}
若必须为类MyClass 添加访问修饰符,并使MyClass 的可访问域保持不变,则应选择_________
A.private
B.protected
C.internal
正确答案:-----
D.public
正确答案:-----
10.在C#中,引用命名空间system 的正确语句是:
A.using System;
B.#import
C.uses System;
D.#include
正确答案:-----
东大21秋《软件设计模式》在线平时作业2[答案]多选题答案
二、判断题 (共 10 道试题,共 50 分)
11.面向对象的程序测试指的是测试类中每一个服务的算法,以保证其正确性。
12.在C#中实现继承的语法是在类名后加上两个冒号,在加上基类名称。
13.在C# 2005编程环境中,int32型变量可以直接隐式的转换成char型变量。
14.变换型数据流图的一般步骤是分析数据、变换数据、打印结果。
15.软件系统是用例模型的一个组成部分。
16.在检查状态图的完整性和一致性时,只要是没有前驱或后继的状态,则表明发现了一个错误。
17.当我们定义一个新类的时候,除了考虑当前应实现的功能,还应考虑以后的复用。
21.在面向对象方法中,由于对象中的数据以及对数据的操作是封装的,所以对某一类对象的修改一般只涉及该类,通常不会对整个系统造成很大影响。
19.软件危机与软件本身的特点有关。
20.面向过程方法的缺点是过程和数据结合的过于紧密。
东大21秋《软件设计模式》在线平时作业2[答案]历年参考题目如下:
18秋学期《软件设计模式》在线作业3-0001
试卷总分:100 得分:0
一、 单选题 (共 10 道试题,共 50 分)
1.下面是几条动态初始化二维数组的语句,指出其中正确的:
A.int arr5[][]=new int[4,5];
B.int[][] arr6 = new int[4, 5];
C.int arr7[,]=new int[4,5];
D.int[,] arr8=new int[4,5];
2.关于结构类型,下列说法哪些是正确的?
A.结构是值类型
B.结构中不允许定义带参数的实例构造函数
C.结构中不允许定义析构函数
D.结构中可以定义成员方法,但是方法内不能使用this 指针
3.以下关于类和对象的说法中,不正确的是:
A.类包含了数据和对数据的操作
B.一个对象一定属于某个类
C.类是同一类对象的抽象
D.可由抽象类生成对象
4.下面有关静态方法的描述中,正确的是:
A.静态方法属于类,不属于实例
B.静态方法可以直接用类名调用
C.静态方法中,可以访问非静态的局部变量
D.静态方法中,可以访问静态的变量
5.在C#中设计类时,应如何保证在释放对象的所有引用之时,释放对象使用的文件、网络等资源?
A.为类重载new运算符
B.为类添加delete运算符
C.为类添加析构函数,在析构函数中释放资源
D.为类实现IDisposable接口,并实现Dispose方法,在该方法中释放资源
6.
分析下列C#语句,注意类MyClass 没有访问修饰符:
namespace ClassLibrary1
{
class MyClass
{
public class subclass
{
int i;
}
}
}
若必须为类MyClass 添加访问修饰符,并使MyClass 的可访问域保持不变,则应选择_________
A.private
B.protected
C.internal
D.public
7.能正确表示逻辑关系“a>=10 或a<=0”的C#语言表达式是____。
A.a>=10 or a<=0
B.a>=10|a<=0
C.a>=10&&a<=0
D.a>=10||a<=0
8.接口是一种引用类型,在接口中可以声明(),但不可以声明公有的域或私有的成员变量。
A.方法、属性、索引器和事件
B.方法、属性信息、属性
C.索引器和字段
D.事件和字段
9. 分析下列语句:
namespace TestCS{
public delegate void Hello(string target);
}
该语句的作用是:( )
A.在TestCS 命名空间中定义了一个名为Hello 的全局方法;
B.在TestCS 命名空间中声明了函数Hello 的原型;
C.在TestCS 命名空间中定义了一个名为Hello 的函数指针;
D.在TestCS 命名空间中定义了了一个名为Hello 的委托类型;
10.int[][] myArray3=new int[3][]{new int[3]{5,6,2}, new int[5]{6,9,7,8,3}, new int[2]{3,2}}; myArray3[2][2]的值是( )。
A.9
B.2
C.6
D.越界
二、 判断题 (共 10 道试题,共 50 分)
1.如果基类没有默认的构造函数,那么其派生类构造函数必须通过base关键字来调用基类的构造函数。
A.错误
B.正确
2.声明委托实际上是声明了一个方法。
A.错误
B.正确
3.活动图中的动作执行是需要时间来激发的,而状态图不需要。
A.错误
B.正确
4. 在c#中,下列创建数组的语句是否合法?
Int[] iArray = new int[ null ];
A.错误
B.正确
5.数据流分析技术是结构化分析方法的核心技术。
A.错误
B.正确
6.不同的建模语言大多雷同,但仍存在细微差别,不过这并不妨碍用户之间的交流。
A.错误
B.正确
7.面向过程方法的缺点是过程和数据结合的过于紧密。
A.错误
B.正确
8.结构化程序设计的3种基本结构是顺序、循环和选择。
A.错误
B.正确
9.属性就是实体特征的抽象,比如,对象猫可以有重量,身长等属性。
A.错误
B.正确
10.用例图、类图、对象图、状态图和顺序图属于静态建模机制。
A.错误
B.正确