




已阅读5页,还剩4页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
系别班次学号姓名. 密封线以内答题无效 第 1 页 共 9页 期末试题C#程序设计语言(A 卷) 题号一二三四总分评卷教师 分数 说明:本试卷共四大题,试卷满分 100 分,考试时间 120 分钟。 一判断题(每题 1 分,共 10 分,正确的打,错误的打) 题号1 12 23 34 45 56 67 78 89 91010 答案 ()1“+、-、*、/、%、+、-均属于二元运算符。 ()2字符串类型属性引用类型。 ()3Visual Studio 控件的属性窗口中,按钮“A-Z”点击后,属性列表会先按照功 能分类排列属性后在每个单元中以名称排序。 ()4派生类可以继承基类的成员,以及方法的实现;派生的接口继承了父接口的成 员方法,并且也继承父接口方法的实现。 ()5当创建派生类对象时,先执行基类的构造函数,后执行派生类的构造函数。 ()6隐式类型转换就是不需要声明目标类型就可以进行的转换? ()7 如果基类没有默认的构造函数, 那么其派生类构造函数必须通过 base 关键字来调 用基类的构造函数。 ()8在 C#中在派生类中重新定义基类类的虚函数必须在前面加 override。 ()9C中方法的参数中输出型参数(out)的实参在传递给形参前,不需要明确赋值, 但需在方法返回前对该参数明确赋值。 ()10 在类中可以重载构造函数, C会根据参数匹配原则来选择执行合适的构造函数。 二单项选择题(每题 2 分,共 40 分) 一、一、(说明:每题有且仅有一个正确答案,请将正确答案填入下表)(说明:每题有且仅有一个正确答案,请将正确答案填入下表) 题号1 12 23 34 45 56 67 78 89 91010 答案ABBBCDDABC 题号1111121213131414151516161717181819192020 答案CDACCBAAAD 1.C#程序设计语言属于什么类型的编程语言:a A高级语言B自然语言C机器语言D汇编语言 2.如有 int a=11;则表达式(a+*1/3)的值是:b A0B3C4D12 3.类的字段和方法的默认访问修饰符是:b A publicB privateC protectedD internal 4.对于在代码中经常要用到的且不会改变的值, 可以将其声明为常量。 如圆周率PI始终为3.14。 现在要声明一个名为 PI 的圆周率常量,下面哪段代码是正确的?b A.const float PI;PI = 3.14f;B.const float PI = 3.14f; 系别班次学号姓名. 密封线以内答题无效 第 2 页 共 9页 C.float const PI;PI = 3.14f;D.float const PI = 3.14f; 5.请问经过表达式 a=3+35?0:1 的运算,变量 a 的最终值是什么?。c A6B1C0Dtrue 6.下列语句是 MyClass 的一部分,obj 是 MyClass 的一个对象。 private class subclass public int data; void change(ref int x) x=1; public void test() subClass s=new subClass(); s.data=100; change(ref s.data); Console.WriteLine(s.data); 则调用obj.test()后。控制台输出( d) 。 A. 100B. 101C. 0D. 1 7.用户自定义的异常类应该从哪个类中继承(d) A. System.ArgumentExceptionB. System.IO.IOException C. System.SystemExceptionD. System.ApplicationException 8.下面有关虚方法的描述正确的是( a) 。 A. 虚方法能在程序运行时,动态确定要调用的方法,因而比非虚方法更灵活,更方便 B. 在定义虚方法时,基类和派生类的方法定义语句中都要带上 virtual 修饰符 C. 重写基类的虚方法时,为消除隐藏基类成员的警告,需要带上 new 修饰符 D. 在重写虚方法时,需要同时带上 override 和 virtual 修饰符 9.下列语句声明了一个委托:public delegate int myCallBack(int x);则用该委托产生的回调 方法的原型应该是:b A.void receive (int x)B.int receive(int num) C.int receive( )D.不确定的 10. C#中 TestClass 为一自定义类,其中有以下属性定义 public void Property 使用以下语句创建了该类的对象,并使变量 obj 引用该对象: TestClass obj=new TestClass(); 那么,可通过什么方式访问类 TestClass 的 Property 属性(c) A. TestClass.Progerty;B. TestClass. Property(); C. obj. Property;D. obj. Property(); 11. 已知类 Base、MyClass 的定义如下 class Base public void Hello() 系别班次学号姓名. 密封线以内答题无效 第 3 页 共 9页 System.Console.WriteLine(“Hello in Base!“);/先基后派 class Derived : Base public void Hello() System.Console.WriteLine(“Hello in Derived!“); 则下列语句在控制台中的输出结果为_c_。 Derived x = new Derived(); x.Hello(); A. Hello in Base!B. Hello in Derived! C. Hello in Base!D. Hello in Derived! Hello in Derived!Hello in Base! 12. 下列关于接口的说法中,哪个选项是正确的?(d) A. 一个类可以有多个基类和多个基接口 B. 抽象类和接口都不能被实例化 C. 抽象类和接口都可以对成员方法进行实现 D.派生类可以不实现抽象基类的抽象方法,但必须实现继承的接口的方法 13. 下列关于构造函数的描述中,哪个选项是正确的?(a) A. 构造函数必须与类名相同B. 构造函数不可以用 private 修饰 C. 构造函数不能带参数D. 构造函数可以声明返回类型 14. 引用数组元素时,数组下标的数据类型可以允许哪项类型?(c) A. 整型常量B. 整型表达式 C. 整型常量或整型表达式D. 任何类型的表达式 15. 以下类 MyClass 的属性 count 属于_c_属性。 class MyClass int i; int count get return i; A. 只读B. 只写C. 可读写D. 不可读不可写 16. 要让用户选择和浏览要打开的文件,应使用什么对话框?(b) A. FileDialogB. OpenFileDialo 系别班次学号姓名. 密封线以内答题无效 第 4 页 共 9页 C. SaveFileDialoD. FolderBrowserDialog 17. 在 Visual Studio 2005 中,假设你正在单步调试某个应用程序。程序从入口开始,调用某个 私有方法将产生异常。 现在代码运行到如图所示位置, 应该使用下面哪种方式进一步调试? a A.使用逐语句调试B.使用逐过程调试 C.跳出调试D.停止调试 18. .NET Framework 2.0 中,处理异常是很有用的功能。一个 try 代码块可以有多个 catch 块于 之对应。在多个 catch 块中,下面哪个异常应该最后捕获?a A. System.Exception 类B. System.SystemException 类 C. System.ApplicationException 类D. System.StackOverflowException 类 19. 在二维坐标系中,通常需要保存一组点的坐标。使用二维数组是一个解决方案。下面哪段代 码正确初始化了 2 行 2 列的整数二维数组?a A. int, array = new int2,2;B. int array = new int22; C. int, array = new int22;D. int array = new int2,2; 20. 已经定义了一个 Season 枚举,它有 4 个成员 Spring,Summer,Autumn,Winter。现在需要 定义一个名为 currentSeason 的 Season 枚举, 并将其赋值为 Spring, 应使用下面哪段代码? d A. Season currentSeason = Spring;B. currentSeason = Spring; C. currentSeason = Season.Spring;D. Season currentSeason = Season.Spring; 三简答题(每题 5 分,共 10 分) 1.类与对象有什么区别? 答:类是用来描述某种具有相同属性和行为的事物,对象是类的一种具体表现。 2.什么叫多态性,在 C#语言中如何实现多态? 答:多态性是指一段程序能够处理多种类型对象的能力。 四综合题(共 40 分) 系别班次学号姓名. 密封线以内答题无效 第 5 页 共 9页 1.下面这段程序要完成的功能是:从输入的字符串中找出小写字母并输出到终端。请检查下列 代码,找出所有错误的代码,并写出该行完整的正确代码。 (4 分) 1 using System; 2 public class Program 3 4static void Main(string args) 5 6string inputString=Console.ReadLine(); 7string lowerCase=string.Empty; 8foreach (char ch in inputString) 9if (ch=a|ch=a 2.下述代码用于重写 Message 方法。请分析下述代码,并更正错误代码行。(4 分) 1 interface IMsg 2 3void Message(); 4 5 public class MyClass : IMsg 6 7public virtual void Message() 8 9Console.WriteLine(“MyClass“); 10 11 12 public class MyDerivedClass : MyClass 13 14public void Message() 15 16Console.WriteLine(“MyDerivedClass“); 17 18 第第 14 行:更正为:行:更正为: public override void Message() 3.下面代码功能是对数组进行遍历,请分析下列代码段并在空白行补全 C代码。(4 分) static void Main(string argz) 系别班次学号姓名. 密封线以内答题无效 第 6 页 共 9页 string myString=“windows“,“form“,“dialog“; foreach(1) Console.WriteLine(str); (1) :string str in myString 4.下面程序中两个方法需要实现的功能是:int 数组相加,即数组中的每项相加, 以及 string 类型的相加,即把一串字符串接到另一串字符串后面。 请分析下列代码段,并在空白行补全 visual C#代码。(6 分) (1) int result=new intarray1.Length ; for (int i=0;iarray1.Length ;i+) resulti =array1i +array2i; return result; (2) string spaceStr = “ “, result = null; result = str1 + spaceStr + str2; return result; static void Main(string arges) int a = 1, 2, 3, , b = 4, 5, 6 ; int sumArray = new int3; string str1 = “visual“, str2 = “studio“; string sumString = null; sumArray = Add(a, b); sumString = Add(str1, str2); 1,static intAdd(int array1, int array2) 2.static string Add(string str1, string str2) 5.下列程序段的作用是对字符串数组 myArray 进行排序后输出 “RubyMarkNormanKinger” , 请补全代码完成该功能。(6 分) static void Main(string args) string myArray = new string “Kinger“, “Norman“, “Ruby“, “Mark“ ; Sort(myArray); foreach (string str in myArray) Console.Write(str + “); 系别班次学号姓名. 密封线以内答题无效 第 7 页 共 9页 public static void Sort(string array) string str; forfor (int(int j j = = 0;0; j j array.Lengtharray.Length - - 2;2; j+)j+) forfor (int(int i i = = 0;0; i i array.Lengtharray.Length - - j j - - 1;1; i+)i+) strstr = = arrayi;arrayi; arrayiarrayi = = arrayiarrayi + + 1;1; arrayiarrayi + + 11 = = str;str; 6.比尔在教他的女儿面向对象的知识。他写了一个类 Bill 和一个接口 IPrintname。现在他希望 女儿能够写一个类 Jennifer,继承自 Bill,重写基类函数 WhoAmI(),将输出改为“Jennifer” ; 并且实现接口 IPrintname,该接口只有一个方法 Print,这个方法的实现会在控制台打印调用 WhoAmI 函数的结果(即: “Jennifer” ) 。(6 分) public class Bill public virtual string WhoAmI() return “Bill“; public interface IPrintname void Print(); public class Jennifer : Bill, IPrintname public override string WhoAmI() return “Jennifer“; public void Print() Console.WriteLine(WhoAmI(); 7.下列 Shape 类是一个表示形状的抽象类,Area( )为求图形面积的函数,Total( )则是一个通用 的用求不同形状的图形面积总和的函数。请从 Shape 类派生矩形类(Rectangle) 、圆形类 (Circle) ,给出具体的求面积函数。并在主函数中写出计算如图所示图形面积的语句。(共 系别班次学号姓名. 密封线以内答题无效 第 8 页 共 9页 10 分) namespace test class Program static void Main(string args) rectangle rec1
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 建筑方案设计编制说明模板
- 塑料制品成型制作工理念考核试卷及答案
- 镍钴冶炼过程质量跟踪分析报告
- 需要调整施工方案的条件
- 湖南仿古工程施工方案
- 葡萄酒社区团长营销方案
- 五年级学生数学思维能力提升方法
- 阜阳团建活动策划方案公司
- 初中数学类活动方案策划
- 个人住宅买卖合同范本解析
- 临时用电安全教育培训课件
- GJB9001C-2017质量管理体系检查内容的内部审核检查表【含检查内容】
- 半导体数字集成电路测试技术概要
- 心包积液以及心包填塞
- 商业银行内部审计技术与方法
- 河道清淤整治工程施工组织设计方案
- 论信息技术对公共行政的影响分析研究行政管理专业
- 技术部薪资等级晋升制度76799
- 生物化学:第2章 核酸的结构与功能
- 湖南省住院病案首页
- 资产评估的公式整理版
评论
0/150
提交评论