《面向对象程序设计C#.NET-期末试卷及答案.docx》由会员分享,可在线阅读,更多相关《面向对象程序设计C#.NET-期末试卷及答案.docx(7页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、期末考试试卷课程名称: 面对对象程序设计C# 适用年级/专业: 081/计算机 试卷类别 开卷()闭卷() 学历层次 本科 考试用时 120分钟 考生留意:答案要全部抄到答题纸上,做在试卷上不给分一, 单项选择题(每小题1分,共20分)1. C#不支持的注释格式是 。A /单行注释B - 单行注释C /*多行注释*/ D /xml注释2. 以下标识符中,正确的是 。A. _nName B. Main C. 6Ptuer D. x5#3. Microsoft Framework SDK内置的C#编译器是 。Acs.exeBjavac.exeC csc.exe D scs.exe4. 以下说法中,
2、正确的是 。AMain函数是由C#语言供应的标准函数,不须要用户编写它的内容。B在C#程序中,要调用的函数必需在Main函数中定义。C在C#程序中,必需显式调用Main函数,它才起作用。 D一个C#程序无论包含多少个函数,C#程序总是从Main函数起先执行。5. 派生类能够干脆访问的基类的成员是 。A 抽象成员 B 爱护成员 C 私有成员 D 静态成员6下面是几条定义类的语句,不能被继承的类是 。Aabstract class Figure Bclass Figure Cpublic class Figure Dsealed class Figure7下列数组初始化语句哪些是不正确的? 。 A
3、int nums = new int0,1,2,3,4; Bint nums2 = 0,1,2,3,4,5; Cint num_1 = new int0,1,new int0,1,2,new int0,1,2,3; Dint num_2 = 0,1,0,1,2,0,1,2,3; 8. 下面有关虚方法的描述正确的是 。A. 虚方法与非虚方法相比,其优点在于:能在程序运行时,动态确定要调用的方法,因而更敏捷,更便利 。B在定义虚方法时,基类与派生类的方法定义语句中都要带上virtual修饰符。C重写基类的虚方法时,为消退隐藏基类成员的警告,须要带new修饰符。D重写基类的虚方法时,须要同时带上ov
4、erride与virtual修饰符。9. 假如不带修饰符,C#中类成员被默认声明成 。Apublic型 Bprotected型 Cprivate型 Dstatic型 10.子类从父类中继承了一个方法,但此方法在子类无用,所以可以隐藏基类中的方法,只要在子类中运用关键字: 。A.overrideB.new C.virtualD.sealed11.下列类型中,那个是值类型 。A.枚举B. 类C. 接口D. 数组12. C#源程序文件的扩展名为 。A .vb B .c C .cpp D .cs 13. 下面的选项中,不能用于区分重载方法的是 。A 返回类型 B 参数个数 C 参数类型 D 参数依次1
5、4. 下面对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
6、switch(month) case 1: dd=31; case 2: dd=28;default: ShowMessage(“oklo”);Dforeach(Stu p at school)p.age+=1;16. 对字符串运用正则表达式所产生的结果不行能是: 。A字符串与正则表达式匹配。B返回一个子串。C返回一个整数表示字符串长度。D返回一个新字符串,表示字符串某个部分的修改。17. 已知customers 是包含ID, FirstName, Email三个属性的列表,数据库表的名称为Customer,则下面的LINQ表达式转换成SQL语句正确的是 。Var Resut=from cus
7、tomer in customers where customer.FirstName=”Ptuer”select customer ASelect * from CustomerBselect ID,FirstName,Email from Customer where FirstName=”Puter”Cselect * from Customers where FirstName=”Puter”D. select Ptuer, ID,FirstName,Email from Customer where FirstName=”Puter”18. 下列的术语与数据库连接无关的是 。A. O
8、DBCB. ADOC. LINQD.OSD19. Visual Studio 中常用的创建事务处理程序是 。A. 点击控件,然后在其属性窗口创建名事务的处理程序。B. 双击控件。C. 打开现存的事务处理程序下拉列表,选择要创建的时间名称。D. 以上都可以。20. 下列表述不是面对对象程序设计特性的是: 。A. 封装B. 继承C. 映射D. 多态二, 填空题(每小题2分,共20分)1 依据后进先出(LIFO)原则存储数据项的数据结构是。 2 C#中类的成员包括:字段, , 方法 3 假如须要在C#的方法中传递数目可变的参数,则须要在参数前加上 关键字。4 C#中全部的类都派生于 类。5 结构体是
9、传递给方法时,是按 传递的。6 与类都可以被继承,但是与类不同的是它可以被多继承。 7 C#中供应了现成的方法 可以对数组进行排序。8 中包含的string类供应了许多的字符串处理方法,其中用来获得子串的方法是 。 9 LINQ表达式是延迟执行的,一般会在我们访问 时发生。10. Windows Forms 编程中控件的属性确定其外观, 确定其行为。三, 阅读代码,写结果(每小题5分,共10分)1. 当输入 e 与 q 时下列代码的输出结果是什么?namespace Answer class Program static void Main(string args) char c; while
10、(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
11、 - op2.visual; return op;class program public static void Main(string args) OverAdd Opt = new OverAdd(); OverAdd Opt1 = new OverAdd(); OverAdd Opt2 = new OverAdd(); Opt1.real = 6; Opt1.visual = 3; Opt2.real = 4; Opt2.visual = 7; Opt = Opt1 - Opt2; int tem = Opt1.real - 1; int m=Convert.ToInt32(tem);
12、 Console.WriteLine(0)+(1)i, Opt.real, Opt.visual); Console.ReadKey();四, 简答题(每小题6分,共30分)1. C#预处理吩咐的作用是什么?常用的预处理吩咐有那些?(至少写出4个)2. 什么是只读字段,如何对只读字段进行赋值?3. 简述正则表达式的组成。4. 什么是不规则数组,声明一个二维字符型不规则数组的代码定义。5. 运用VS中的LINQ To SQL设计器生成数据库表的映射类的一般步骤是怎样的?五, 按要求写程序(每小题10分,共20分)1. 已知某个程序的类关系图如下,请依据图中的结构写出程序,方法的详细内容自定,但是
13、Main()方法必需调用Write()方法2. (1)定义一个基类MyClass,其中包含虚拟的方法GetString(),这个方法返回存储在私有字段myString中的字符串,该字段可以通过只写公共属性ContainedString来赋值。 (2)然后从类MyClass中派生一个类MyDerivedClass。重写GetString()方法,该方法的调用基类中的GetString()方法从基类中返回字符串myString,但在返回的字符串后添加 “ Output from derived class”字符串。(3)主函数实现:从键盘输入一个字符串存入myString,然后输出MyDerivedClass中GetString() 方法的返回的字符串。第 7 页