c#期末考试复习题及答案(共13页).doc
《c#期末考试复习题及答案(共13页).doc》由会员分享,可在线阅读,更多相关《c#期末考试复习题及答案(共13页).doc(13页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上基于C#的OOP技术课程 复习题/一、 判断题(本大题共10个小题,每小题1分,共10分)1. 在同一行上可以书写多条语句,每条语句间用分号分隔。(t)2. 在数据类型转化时,只能通过类型转换关键字或Convert类实现。(f)3. 接口与类同样是面向对象程序设计的核心,是创建对象的模版。(F)4. 委托是将方法作为参数传递给另一方法的一种数据类型。事件与委托没有关系。(F)5. 可以重写私有的虚方法。(T)6. 使用Directory类的Move()方法可以删除文件。(T)7. 不能指定接口中方法的修饰符。(T)8. 在定义数组时不允许为数组中的元素赋值。(F)9.
2、 接口与类同样是面向对象程序设计的核心,是创建对象的模版。()10. 如果要实现重写,在基类的方法中必须使用virtual关键字,在派生类的方法中必须使用overrides关键字。(T)11. 在C#中,所有类都是直接或间接地继承System.Object类而得来的。(T)12. 在C#中,任何方法都不能实现多继承。(F)13. 在C#中,子类不能继承父类中用private修饰的成员变量和成员方法。(F)14. 可以阻止某一个类被其他类继承。(T)15. 使用FileInfo类的Copy()方法可以复制文件。(T)二、选择题(本大题共20个小题,每小题2分,共40分)1. 在 C#中,表示一个
3、字符串的变量应使用以下哪条语句定义? BA.CString str;B.string str;C.Dim str as stringD.char * str;2. C#中 MyClass 为一自定义类,其中有以下方法定义:Apublic void Hello()使用以下语句创 建了该类的对象,并使变量 obj 引用该对象,那么,访问类MyClass的Hello方法正确的是:MyClass obj = new MyClass();A.obj.Hello();B.obj:Hello();C.MyClass.Hello();D.MyClass:Hello();3. 分析下列程序中类 MyClass
4、的定义 Dclass 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); /(提示:注意类 MyClass 中的 new 关键字)A.0, 0B.100, 100C.0, 100D.100, 04. 在定义类时,如果希望类的某个方法能够在派生类中进一步进行改进,以处理不同的派生类的需要,则应将该方法声明
5、成_C_A.sealed 方法B.public 方法C.virtual 方法D.override 方法5. 为了将字符串 str=“123,456”转换成整数 ,应该使用以下哪条语句? A A.int Num = int.Parse(str);B.int Num = str.Parse(int);C.int Num = (int)str;D.int Num = int.Parse(str,Globalization.NumberStyles.AllowThousands);6. 在 C#语言中,下列能够作为变量名的是_C_A.ifB.3abC.a_3bD.a-bc7. 以下程序的输出结果是_C
6、_ Using system;Class Example1 Public Static void main() Int a=5,b=4,c=6,d; Console.Writeline(“0”,d=ab?(ac?a:c):b); A.5 B.4 C.6 D.不确定8. 能正确表示逻辑关系“a=10 或 a=10 or a=10|a=10&a=10|a2) return(fib(n-1)+fib(n-2); Else rerurn(2); Public Static void main() Console.Writeline(“0”,fib(3); A.2 B.4 C.6 D.813. 调用重载
7、方法时,系统根据_B_来选择具体的方法A.方法名B.参数的个数和类型C.参数名及参数个数D.方法的返回值类型14. 下列的_D_不是构造函数的特征A.构造函数的函数名和类名相同B.构造函数可以重载C.构造函数可以带有参数D.可以指定构造函数的返回值15. 已知类 B 是由类 A继承而来,类 A 中有一个为 M 的非虚方法,现在希望在类 B 中也 定义一个名为 M 的方法,若希望编译时不出现警告信息,则在类 B中声明该方法时,应使 用_B_方法A.staticB.newC.overrideD.virtual16. 下列关于 trycatchfinaly语句的说明中,不正确的是_D_A.catch
8、块可以有多个B.finalyC.catch块也是可选的D.可以只有 try块17. 以下标识符中,正确的是_A_A._nNameB.typeofC.6bD.x5# 18. 下面有关运算符的说法正确的是_D_A.算术运算符不能对布尔类型,String*(字符串类型)和 Object*(对象类型) 进行算术运算B.关系运算中的”= =”和赋值运算符中的”=”是相同的C.sizeof 运算符用来查询某种数据类型或表达式的值在内存中所占懂得内存空间大小(字 节数)D.括号在运算符中的优先级中是最高的,它可以改变表达式的运算顺序19. 下面对抽象类描述不正确的是_C_A.抽象类只能作为基类使用B.抽象类
9、不能定义对象C.抽象类可以实例对象D.可以实现多态20. 下面对异常说法不正确的是_D_A.try/catch块为基本引发异常的组合B.在捕获异常时,可以有多个 catch块C.无论异常是否发生,finally块总会执行D.try块和 finally 不能连用1. C#中,新建一字符串变量 str,并将字符串Toms Living Room保存到串中,则应该使用下列哪条语句? AA.string str = Toms Living Room;B.string str = Toms Living Room;C.string str(Toms Living Room);D.string str(T
10、oms Living Room);2. 分析下列程序: A public class class4 private 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);3. 分析下列程序中类 MyClass 的定义 class BaseClass public i
11、nt i; class MyClass:BaseClass public new int i; 则下列语句在 Console 上的输出为_D_. MyClass y = new MyClass();BaseClass x = y;x.i = 100;Console.WriteLine(0, 1,x.i,y.i); /(提示:注意类 MyClass 中的 new 关键字)A.0, 0B.100, 100C.0, 100D.100, 04. 在类的定义中,类的_B_描述了该类的对象的行为特征A.类名B.方法C.所属的名字空间D.私有域5. 关于 C#程序的书写,下列不正确的说法是_D_A.区分大小
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- c# 期末考试 复习题 答案 13
限制150内