面向对象程序设计C#.NET-期末试卷及答案汇编 下载本文

学习-----好资料

期末考试试卷

课程名称: 面向对象程序设计C#.NET 适用年级/专业: 081/计算机 试卷类别 开卷(√)闭卷() 学历层次 本科 考试用时 120分钟

《考生注意:答案要全部抄到答题纸上,做在试卷上不给分》 ...........................///////////////////////////////////////////////////

一、单项选择题(每小题1分,共20分)

1. C#不支持的注释格式是 。

A. //单行注释

B. -- 单行注释 D. ///xml注释 C. 6Ptuer

D. x5#

C. /*多行注释*/

A. _nName A.cs.exe

2. 以下标识符中,正确的是 。

B. Main

3. Microsoft .Net Framework SDK内置的C#编译器是 。

B.javac.exe C. csc.exe D. scs.exe

4. 以下说法中,正确的是 。

A.Main函数是由C#语言提供的标准函数,不需要用户编写它的内容。 B.在C#程序中,要调用的函数必须在Main函数中定义。 C.在C#程序中,必须显式调用Main函数,它才起作用。

D.一个C#程序无论包含多少个函数,C#程序总是从Main函数开始执行。 A. 抽象成员 B. 保护成员 A.abstract class Figure C.public class Figure

C. 私有成员 B.class Figure D.sealed class Figure

D. 静态成员

5. 派生类能够直接访问的基类的成员是 。

6.下面是几条定义类的语句,不能被继承的类是 。

7.下列数组初始化语句哪些是不正确的? 。

A.int[] nums = new int[]{0,1,2,3,4}; B.int[] nums2 = {0,1,2,3,4,5};

C.int[][] num_1 = {new int[]{0,1},new int[]{0,1,2},new int[]{0,1,2,3}};

D.int[][] num_2 = {{0,1},{0,1,2},{0,1,2,3}};

8. 下面有关虚方法的描述正确的是 。

更多精品文档

学习-----好资料

A. 虚方法与非虚方法相比,其优点在于:能在程序运行时,动态确定要调用的方法,因而更灵活,更方便 。

B.在定义虚方法时,基类和派生类的方法定义语句中都要带上virtual修饰符。

C.重写基类的虚方法时,为消除隐藏基类成员的警告,需要带new修饰符。 D.重写基类的虚方法时,需要同时带上override和virtual修饰符。 A.public型

B.protected型 C.private型

D.static型

9. 如果不带修饰符,C#中类成员被默认声明成 。

10.子类从父类中继承了一个方法,但此方法在子类无用,所以可以隐藏基类中的方法,只要在子类中使用关键字: 。

A.override A.枚举

B.new

C.virtual

D.sealed

11.下列类型中,那个是值类型 。

B. 类

C. 接口 C. .cpp

D. 数组 D. .cs

12. C#源程序文件的扩展名为 。

A. .vb B. .c A. 返回类型

13. 下面的选项中,不能用于区别重载方法的是 。

B. 参数个数 C. 参数类型 D. 参数顺序

14. 下面对C#中类的构造函数描述正确的是 。

A.与方法不同的是,构造函数只有void这一种返回类型。 B.构造函数如同方法一样,需要人为调用才能执行其功能。 C.构造函数一般被声明成private型。

D.在类中可重载构造函数,C#会根据参数匹配原则来选择执行合适的构造函数。

15. 假设变量均已正确声明,以下没有语法错误的是: 。

A. if(2-3) { a=a+3; } B. switch(name)

{ case “li”: ShowMessage(“okli”);break;

case “le”: ShowMessage(“okle”);break; default: ShowMessage(“oklo”);} C. switch(month)

{ case 1: dd=31; case 2: dd=28;default: ShowMessage(“oklo”);}

更多精品文档

学习-----好资料

D.foreach(Stu p at school){p.age+=1;}

16. 对字符串使用正则表达式所产生的结果不可能是: 。

A.字符串和正则表达式匹配。 B.返回一个子串。

C.返回一个整数表示字符串长度。

D.返回一个新字符串,表示字符串某个部分的修改。

17. 已知customers 是包含ID、FirstName、Email三个属性的列表,数据库表的

名称为Customer,则下面的LINQ表达式转换成SQL语句正确的是 。

Var Resut=

from customer in customers where customer.FirstName=”Ptuer” select customer

A.Select * from Customer

B.select ID,FirstName,Email from Customer where FirstName=”Puter” C.select * from Customers where FirstName=”Puter” D. select Ptuer、ID,FirstName,Email from Customer

where FirstName=”Puter”

18. 下列的术语与数据库连接无关的是 。

A. ODBC

B. ADO.NET

C. LINQ

D.OSD

19. Visual Studio 中常用的创建事件处理程序是 。

A. 点击控件,然后在其属性窗口创建名事件的处理程序。 B. 双击控件。

C. 打开现存的事件处理程序下拉列表,选择要创建的时间名称。 D. 以上都可以。 A. 封装

B. 继承

C. 映射

D. 多态

20. 下列表述不是面向对象程序设计特性的是: 。

二、填空题(每小题2分,共20分)

1. 按照后进先出(LIFO)原则存储数据项的数据结构是。 ① 2. C#中类的成员包括:字段、 ① 、方法

3. 如果需要在C#的方法中传递数目可变的参数,则需要在参数前加上 ①

关键字。

更多精品文档

学习-----好资料

4. C#中所有的类都派生于 ① 类。

5. 结构体是传递给方法时,是按 ① 传递的。

6. ① 与类都可以被继承,但是与类不同的是它可以被多继承。 7. C#中提供了现成的方法 ① 可以对数组进行排序。

8. .NET中包含的string类提供了很多的字符串处理方法,其中用来获取子串的

方法是 ① 。

9. LINQ表达式是延迟执行的,一般会在我们访问 ① 时发生。 10. Windows Forms 编程中控件的属性决定其外观, ① 决定其行为。 三、阅读代码,写结果(每小题5分,共10分)

1. 当输入 e 和 q 时下列代码的输出结果是什么?

namespace Answer { class Program

{

static void Main(string[] args)

{ char c;

while((c= convert.ToChar(Console.ReadLine()))!=’q’) } } }

{ Console.WriteLine(“你输入的是:{0}”,c); }

2. 分析下列程序,写出运行结果 using System; public class OverAdd { public int real; public int visual;

public static OverAdd operator -(OverAdd op1, OverAdd op2) { OverAdd op = new OverAdd(); op.real = op1.real - op2.real; op.visual = op1.visual - op2.visual; return op; } }

class program

更多精品文档