内容发布更新时间 : 2025/1/7 6:22:37星期一 下面是文章的全部内容请认真阅读。
面向对象程序设计习题库
选择题
1. 一个设计得好的面向对象系统具有( D)特征。
A 低内聚、低耦合 B 高内聚、低耦合 C 高内聚、高耦合 D 低内聚、高耦合 2. 面向对象程序设计的特点主要概括为(C)。
A 可分解性、可组合性、可分类性 B 继承性、封装性、多态性
C 抽象封装性、继承性、多态性 D 封装性、易维护性、可扩展性、可重用性 3. 关于C#程序的书写,下列不正确的说法是( D )。
A. 区分大小写 B. 一行可以写多条语句 C. 一条语句可写成多行
D. 一个类中只能有一个Main()方法,因此多个类中可以有多个Main()方法 4. 关于C#语言的基本语法,下列哪些说法正确的是( C )
A. C#语言使用using 来引用需要用到的命名空间;
B. 用C#编写的程序中,Main 函数是唯一允许的全局函数; C. C#语言中使用的名称严格区分大小写; D. C#中一条语句必须写在一行内;
5 以下标识符中,正确的是(A )。
A. _nName B. typeof C. 6b D. x5# 6.字符串连接运算符包括&和( A )。
A. + B. - C. * D. /
7.拆箱是关于:( B )
A、值类型到引用类型的转换 B、引用类型到值类型的转换 C、引用类型到引用类型的转换 D、值类型到值类型的转换 8.装箱是关于:( A )
A、值类型到引用类型的转换 B、引用类型到值类型的转换 C、引用类型到引用类型的转换 D、值类型到值类型的转换
9.下列引用类型和值类型描述正确的是( A )。
A. 引用类型变量保存内存地址,值类型直接保存变量值 B. 引用类型在变量中直接保存变量值,值类型保存内存地址 C. 引用类型和值类型保存数据的方式相同
D. .NET Framework不支持值类型,因为所有的类型都是引用类型了
10.一个类中的静态方法的调用可以:( A )
A、通过类名调用 B、通过实例化的对象调用
C、在主方法中直接调用 D、在同一个类中的某一方法中直接调用 11.以下数据类型中,属于引用类型的是:(A )
A、string类型 B、double类型 C、int类型 D、 char类型 12.下列类型中为值类型的是( C )
A. 字符串类型 B. 树组类型 C. 枚举类型 D. 接口类型 13.decimal类型和浮点类型都可以表示小数,正确说法:( C )
A. 两者没有任何区别 B. 小数类型比浮点类型取值范围大 C.小数类型比浮点类型精度高 D. 小数类型比浮点类型精度低
14. 有定义语句:int [,]a=new int[5,6]; 则下列正确的数组元素的引用是__C__。
A. a(3,4) B. a(3)(4) C. a[3][4] D. a[3,4]
15. 在C#编制的财务程序中,需要创建一个存储流动资金金额的临时变量,则应使用下列哪条语句?( A )
A. decimal theMoney; B. int theMoney; C. string theMoney; D. double theMoney; 16. 在C#中,表示一个字符串的变量应使用以下哪条语句定义?( B )
A. CString str; B. string str; C. Dim str as string D. char * str; 17. C#中每个int 类型的变量占用( C )个字节的内存。
A. 1
B. 2
C. 4
D. 8
18.假定一个10行20列的二维整型数组,下列哪个定义语句是正确的( C )。 A. int[ ] arr = new int[10,20] B. int[ ] arr = int new[10,20]
C. int[ , ] arr = new int[10,20] D. int[ , ] arr = new int[20;10]
19. 枚举型常量的值不可以是( D )类型
A. int B. long C. ushort D. doule
20.引用类型主要有4种:类类型、数组类型、接口类型和( C )。 A.对象类型 B.字符串类型 C.委托类型 D.整数类型 21. 分析下列语句:
namespace TestCS {
public delegate void Hello(string target); }
该语句的作用是:( D )
A. 在TestCS 命名空间中定义了一个名为Hello 的全局方法; B. 在TestCS 命名空间中声明了函数Hello 的原型;
C. 在TestCS 命名空间中定义了一个名为Hello 的函数指针; D. 在TestCS 命名空间中定义了了一个名为Hello 的委托类型; 22. 以下关于for循环的说法不正确的是 ( A )。
A. for循环只能用于循环次数已经确定的情况 B. for循环是先判定表达式,后执行循环体语句 C. for循环中,可以用break语句跳出循环体
D. for循环体语句中,可以包含多条语句,但要用花括号括起来。 23.下面对异常说法不正确的是( D ) A.try/catch块为基本引发异常的组合 B.在捕获异常时,可以有多个catch块 C.无论异常是否发生,finally块总会执行 D.try块和finally 不能连用
24. C#程序中,可使用try..catch 机制来处理程序出现的( B )错误。
A. 语法 B. 运行 C. 逻辑 D. 拼写
25. 为了能够在程序中捕获所有的异常,在catch语句的括号中使用的类名为( A )_。
A. Exception B. DivideByZeroException C. FormatException D. 以上三个均可 26. C#源程序文件的默认扩展名为( C )。
A. cpp B. exe C. cs D. lik 27. 下列的( D )不是构造函数的特征。
A. 构造函数的函数名和类名相同 B. 构造函数可以重载 C. 构造函数可以带有参数
D. 可以指定构造函数的返回值
28.类的析构函数的作用是( D )
A.一般成员函数 B.类的初始化 C.对象的初始化 D.释放资源
29.类的析构函数是在( C )调用的。
A.类创建时 B.创建对象时 C.销毁对象时 D.不自动调用
30. 在C#程序中,可以使用( A )属性来引用处于非托管代码环境中的函数。
A. [DllImport] B. [Conditional] C. [STAThread] D. [SecureMethod] 31.对托管代码与非托管代码之间的区别描述正确的是( D )。
A. 非托管代码依赖于CLR提供的服务,而托管代码不需要
B. 托管代码生成的应用程序为目标机器上可执行文件,非托管代码生成的应用程序为中间语言文件
C. 托管代码和非托管代码之间没有区别
D.托管代码依赖于CLR提供的服务,而非托管代码不需要
32.在System.IO命名空间中( C )类是实现创建、移动、枚举目录和子目录的实例方法。
A.Diretory B.File C.DirectoryInfo D.FileInfo 33.下面对程序集和命名空间说法正确的是( B )。
A. 一个程序集只能引用一个命名空间
B. 一个程序集可以引用多个命名空间,一个命名空间也可以保存在多个程序集中 C. 一个程序集可以引用多个命名空间,但一个命名空间只能保存在一个程序集中 D. 一个命名空间可以保存在多个程序集中,命名空间无法包含另外的命名空间 34.( C )命名空间中的类和接口用于创建Web 应用程序的页面?
A. System.Drawing B. System.IO C. System.Web.UI D. System.Web.Service
35. ADO.NET 使用( B )命名空间的类访问SQL Server 数据库中的数据。
A. System.Data.OleDb B. System.Data.SqlClient C. System.Xml.Serialization D. System.IO 36.构成对象的两个主要因素是( A )。
A 属性和操作 B 标识和内容 C 继承和多态 D 消息和封装 37.下面的修饰符中( C )不是访问修饰符。 A.public B.protected C.new
D.internal