学习-----好资料
期末考试试卷
课程名称: 面向对象程序设计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
更多精品文档