C#笔试题目1.doc_第1页
C#笔试题目1.doc_第2页
C#笔试题目1.doc_第3页
C#笔试题目1.doc_第4页
C#笔试题目1.doc_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、下列有关基本类的大小不正确的是DA、int类型是4个字节B、bool类型是1个字节C、long类型是8个字节D、char类型是一个字节 (char类型占两个字节)2、关于定义数组定义不正确的是CA、int numbers=1,2,3,4,5,6;B、int numbers=new int6;C、int numbers=new int23; (定义二维数组的正确方法:int, a = new int3,5;)D、var a=new1,2,3,4,5,6;3、有关数组说法不正确的是AA、数组的内存是分配在栈(堆)中B、数组的索引从零开始的C、数组是一种数据结构,它包含若干相同的类型的变量D、数组可以是一维、多维、交错的4、有关结构体说法不正确的是DA、在结构体声明中,除非字段被声明为const或static,否则无法初始化B、结构体不能声明默认的构造函数(没有参数的构造函数)或析构函数C、结构体不能从类或其他结构体继承D、结构体是引用类型的(结构体是值类型,类是应用类型)5、有关结构体和类的说法不正确的是BA、结构是值类型的,而类是引用类型的B、结构体不可以声明构造函数C、结构体直接继承System.ValueType类型D、结构体可以继承接口6、有关类和结构体的区别说法不正确的是CA、结构体是值类型的,而类是引用类型的B、类的实例化需要new,而结构体可以不用C、结构体内存一定分配在栈(堆)中,而类的内存分配在堆中D、结构可用作可为null的类型,因而可向其赋值null7、关于静态类说法不正确的是CA、声明静态类,该类不能使用new关键字创建实例B、静态仅包含静态成员C、静态类不能包含常量成员D、静态类是密封的8、有关静态成员说法不正确的是AA、可以使用类的实例,访问本身类的静态的成员B、静态方法可以被重载,但不能被重写C、静态成员在第一次被访问之前并且在任何静态构造函数之前初始化D、可以在类中声明静态成员9、有关委托的说法不正确的是DA、一旦为委托分配了方法,委托与该方法具有完全相同的行为B、委托是一种引用方法的类型C、委托可以链接在一起,方法不必与委托签名完全匹配D、委托就是事件一种表示形式(委托与事件是两码事)10、delegate void Del(int x); void DoWork(int k);下列关于委托订阅不正确的是CA、Del d=DoWork;B、Del d=new Del(DoWork);C、Del d+=DoWorkD、Del d=delegate(int x)DoWork(x);11、有关静态构造函数说法不正确的是CA、静态构造函数既没有访问修饰符,也没有参数B、在创建第一个实例前或引用任何静态成员之前,将自动调用静态构造函数来初始化。C、在程序中,用户可以控制何时执行静态构造函数D、无法直接调用静态构造函数12、有关absract关键字说法不正确的是DA、absract用于创建仅用于继承用途的类和类的成员B、absract用于方法,则该方法隐含是虚函数C、absract用于类,则此类无法被实例化D、absract用于方法,则该方法有方法体13、有关继承需要用的关键字说法不正确的是BA、virtual用于修饰方法、属性、索引器或事件,并使它们可以在派生类中被重写。B、virtual(不)可以和static、abstract、private、override修饰符一起使用。C、override关键字提供从基类继承的成员的新的实现,重写的基类方法必须是virtual、abstract、或override关键字修饰的。D、Sealed用于修饰类时,将会阻止其他类从该类派生14、有关索引器说法不正确的是CA、索引器允许类或结构体的实例就像数组一样进行索引B、索引器类似于属性,不同之处在于他们的访问器采用参数C、索引器不可被重载D、索引器不必根据整数值进行索引,由你决定如何定义特定的查找机制15、在C#中,下列常量定义正确的是(B)A、Const double PI 3.1415926;B、Const double e=2.7C、define double PI 3.1415926D、define double e=2.716、以下c#代码:using System.Threading;class App public static void Main() Timer timer = new Timer(new TimerCallback(CheckStatus),null,0,2000); Console.Read();static void CheckSatus(Object state) Console.WriteLine(正在进行检查.) 在使用代码创建定时器对象的时候,同时指定了定时器的事件,运行时将每隔两秒打印一行“正在运行检查.”,因此,TimerCallback是一个(A)A.委托B.结构C.函数D.类名17、在.NET中,从属性的读写特性上来进行分类,可以划分为以下三种,除了(D)。A.只读属性B.只写属性C.读写属性D.不可读不可写的属性18、 阅读以下的C#代码:public class TEApp public static void ThrowException() throw new Exception(); public static void Main() try Console.WriteLine(try); ThrowException(); catch(Exception e) Console.WriteLine(catch); finally Console.WriteLine(finally); 请问代码运行结果是(A)。(选择一项)A.try catch finallyB.tryC.try catchD.try finally19、在C#中,一个类(B).(选择一项)A.可以继承多个类B.可以实现多个接口C.在一个程序中只能有一个子类D.只能实现一个接口20、针对下面的代码: using System; class Teststring public static void Main() String strOriginal; strOriginal = Console.ReadLine(); bool A = strOriginal.Equals(A); Console.WriteLine(A.ToString(); int B = strOriginal.Length; Console.WriteLine(B.ToString(); Console.ReadLine(); 程序运行时输入。“”(五个A的前面有三个空格)则程序输出为(B) (选择一项)A.0 8B.False 8C.1 8D.False 521、以下的C代码段: public struct Person string Name; int Age; public static void Main() Hasbtable A; Person B; /其他处理代码 以下说法正确的是(A)。(选择一项)A.A为引用类型的变量,B为值类型的变量B.A为值类型的变量,B为引用类型的变量C.A和B都是值类型的变量D.A和 B都是引用类型的变量22、以下的C代码: static void Main(string args) Console.WriteLine(运行结果: 0,Console.ReadLine(); Console.ReadLine(); 代码运行结果为(D)。(选择一项)A.在控制台窗口显示“运行结果:”B.在控制台窗口显示“运行结果:0”C.在控制台窗口显示“运行结果:,ConsoleReadLine”D.如果用户在控制台输入“ A”,那么程序将在控制台显示“运行结果:A”23、在C#中定义一个数组,正确的代码为(B)。(选择一项)A.int arraya = new int5;B.int arraya = new int5;C.int arraya = new int;D.int5 arraya = new int;24、在C语言中,下列关于属性的描述正确的是(B)(选择一项)A.属性系是以public关键字修饰的字段,以public关键字修饰的字段也可称为属性B.属性是访问字段值的一种灵活机制,属性更好地实现了数据的封装和隐藏C.要定义只读属性只需在属性名前加上readonly关键字D.在C#的类中不能自定义属性25、程序运行过程中发生的错误,叫作(C)(选择一项)A.版本B.断点C.异常D.属性26、在NET框架类库中,所有与多线程机制应用相关的类都放在(C)命名空间中。(选择一项)A.System.SysThreadB.System.ThreadC.System.ThreadingD.NetException27、如果一个函数成员需要被子类使用且不需要提供其他类来使用,需要的修饰符AA、privateB、protectedC、internalD、public28、阅读以下的C代码: class A public A( ) Console.WriteLine(A); class B:A public B() Console.WriteLine(B); class Program public static void Main() B b = new B(); Console.ReadLine(); 上述代码运行后,将在控制台窗口输出(C)。(选择一项)A. AB. BC. A BD.B A29、在.NET中,以下关于命名空间的描述,正确的是(D)。(选择一项)A.命名空间不可以进行嵌套B.任一个.cs文件中,只能存在一个命名空间C.便用private修饰的命名空间,其内部的类也不允许访问D.命名空间使得代码更加有条理、结构更清晰30、NET中,程序中的错误可以划分为以下三类,除了(D)。 (选择一项)A.逻辑错误B.运行时错误C.语法错误D.自定义错误31、针对下面的C#代码: using System; delegate void D(int i); class P public static void Main() V(new D(R)); public static void R(int t) V(21); public static void V(int i) Console.WriteLine(i.ToString(); Console.ReadLine(); 以下说法正确的是(B )(选择一项)A.代码中存在错误,delegate voidD(int i);不能定义在名称空间或者类之外B.代码中存在错误,代码行V(new D(R);使用委托错误C.程序正常运行,输出为0D.程序正常运行,输出为2132、被volatile关键字修饰字段的作用是( B)A、提供给子类使用,不提供给其他类使用B、禁止对字段的访问施加优化C、表示只读字段,只能赋值一次D、只能在本程序集中使用33、以下关于C#中方法重载的说法正确的是(CD)。(选择二项)A.如两个方法名字不同,而参数的数量不同,那么它们可以构成方法重载B.如两个方法名字相同,而返回值的数据类型不同,那么它们可以构成方法重载C.如两个方法名字相同,而参数的数据类型不同,那么它们可以构成方法重载D.如两个方法名字相同,而参数的数量不同,那么它们可以构成方法重载34、在C#语法中,在派生类中对基类的虚函数进行重写,要求在声明中使用(A)关键字。(选择一项)A.overrideB.newC.staticD.virtual35、在.NET中,Hashtable类所在的命名空间是(C)(选择一项)A.System.ThreadintB.System.IOC.System.CollectionsD.System36、在C#中,可以通过装箱和拆箱实现值类型与引用类型之间相互转换,在下列代码中,有(B)处实现了拆箱。(选择一项)int age = 5;object o= age;o=10;age=(int)o;object oAge =age;A.0B.1C.2D.337、在C#中,下列代码的运行结果是(B) . (选择一项)Intnum =new int1,3,5;ArrayList arr=new ArrayList();For(int i=0;ib?a:b; Max = cn,比如n=1,m=3,S=1+2+3=6。写下解决方案和测试其正确的方案描述95、写一个函数:写出一个int型的整数n,求出n能够整除2的最高次方的幂r,比如n=2,r=1;n=4,r=2;n=6,r=1。写下解决方案和测试其正确的方案描述96、使用数组实现栈的集合(先进后出),最少有两个方法,出栈、入栈,写下解决方案和测试其正确的方案描述97、使用数组实现队列的集合(先进先出),最少有两个方法,添加、删除,写下解决方案和测试其正确的方案描述98、在屏幕坐标上,判断一个点Point(x,y)是否在矩形Rect(Point1,Point2)中,已知Point1是矩形左上方的一个点,Point是右下方一个点坐标,写下解决方案和测试其正确的方案描述99、猫大叫一声,所有的老鼠都开始逃跑,主人被惊醒。要求:1.要有联动性,老鼠和主人的行为是被动的。2.考虑可扩展性,猫的叫声可能引起其他联动效应。100、写一个冒泡排序答案:71. 继承、封装、多态72、IEnumerable、GetEnumerator73、Array、MulticastDelegate74、sizeof、stackalloc75、unsafe、base76、lock、volatile77、try、catch、finally、throw78、delegate、event、var、extern79、Exception,Object80、装箱、拆箱81、private只有在声明他们的类和结构体中才可访问Protected在它的类中或派生类中访问Public对访问成员没有限制Internal对同一程序集的文件中,内部类型或成员才是可访问的82、Heap是堆,空间是由手动操作分配和释放的,它的存储区很大的自由存储区。Stack是栈,是由操作系统自动分配和释放的,栈上的空间是有限的。程序在编译期间变量和函数分配内存都是在栈上进行的,且在运行时函数调用时的参数的传递也是在栈上进行的。83、值类型的值是存放在堆栈中的,改变其值,不改变变量原有的值,而引用类型的值是存放在栈中的,其引用的地址是存放在堆栈中的,改变其值也就改变了变量原

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论