1、下列有关基本类的大小不正确的是DA、int类型是4个字节B、bool类型是1个字节C、long类型是8个字节D、char类型是一个字节2、关于定义数组定义不正确的是CA、int[]numbers={1,2,3,4,5,6};B、int[]numbers=newint[6];C、int[][]numbers=newint[2][3];D、vara=new[]{1,2,3,4,5,6};3、有关数组说法不正确的是DA、数组的内存是分配在栈中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、delegatevoidDel(intx);voidDoWork(intk);下列关于委托订阅不正确的是CA、Deld=DoWork;B、Deld=newDel(DoWork);C、Deld+=DoWorkD、Deld=delegate(intx){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、ConstdoublePI3.1415926;B、Constdoublee=2.7C、definedoublePI3.1415926D、definedoublee=2.716、以下c#代码:usingSystem.Threading;classApp{publicstaticvoidMain(){Timertimer=newTimer(newTimerCallback(CheckStatus),null,0,2000);Console.Read();}staticvoidCheckSatus(Objectstate){Console.WriteLine(正在进行检查...)}}在使用代码创建定时器对象的时候,同时指定了定时器的事件,运行时将每隔两秒打印一行“正在运行检查...”,因此,TimerCallback是一个(A)A.委托B.结构C.函数D.类名17、在.NET中,从属性的读写特性上来进行分类,可以划分为以下三种,除了(D)。A.只读属性B.只写属性C.读写属性D.不可读不可写的属性18、阅读以下的C#代码:publicclassTEApp{publicstaticvoidThrowException(){thrownewException();}publicstaticvoidMain(){try{Console.WriteLine(try);ThrowException();}catch(Exceptione){Console.WriteLine(catch);}finally{Console.WriteLine(finally);}}}请问代码运行结果是(A)。(选择一项)A.trycatchfinallyB.tryC.trycatchD.tryfinally19、在C#中,一个类(B).(选择一项)A.可以继承多个类B.可以实现多个接口C.在一个程序中只能有一个子类D.只能实现一个接口20、针对下面的C#代码:usingSystem;classTeststring{publicstaticvoidMain(){StringstrOriginal;strOriginal=Console.ReadLine();boolA=strOriginal.Equals(A);Console.WriteLine(A.ToString());intB=strOriginal.Length;Console.WriteLine(B.ToString());Console.ReadLine();}}程序运行时.输入。“AAAAA”(五个A的前面有三个空格)则程序输出为(B)(选择一项)A.08B.False8C.-18D.False521、以下的C#代码段:publicstructPerson{stringName;intAge;}publicstaticvoidMain(){HasbtableA;PersonB;//其他处理代码}以下说法正确的是(A)。(选择一项)A.A为引用类型的变量,B为值类型的变量B.A为值类型的变量,B为引用类型的变量C.A和B都是值类型的变量D.A和B都是引用类型的变量22、以下的C#代码:staticvoidMain(string[]args){Console.WriteLine(运行结果:{0},Console.ReadLine());Console.ReadLine();}代码运行结果为(D)。(选择一项)A.在控制台窗口显示“运行结果:”B.在控制台窗口显示“运行结果:{0}”C.在控制台窗口显示“运行结果:,Console.ReadLine”D.如果用户在控制台输入“A”,那么程序将在控制台显示“运行结果:A”23、在C#中定义一个数组,正确的代码为(B)。(选择一项)A.intarraya=newint[5];B.int[]arraya=newint[5];C.intarraya=newint[];D.int[5]arraya=newint;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#代码:classA{publicA(){Console.WriteLine(A);}}classB:A{publicB(){Console.WriteLine(B);}}classProgram{publicstaticvoidMain(){Bb=newB();Console.ReadLine();}}上述代码运行后,将在控制台窗口输出(C)。(选择一项)A.AB.BC.ABD.BA29、在.NET中,以下关于命名空间的描述,正确的是(D)。(选择一项)A.命名空间不可以进行嵌套B.任一个.cs文件中,只能存在一个命名空间C.便用private修饰的命名空间,其内部的类也不允许访问D.命名空间使得代码更加有条理、结构更清晰30、NET中,程序中的错误可以划分为以下三类,除了(D)。(选择一项)A.逻辑错误B.运行时错误C.语法错误D.自定义错误31、针对下面的C#代码:usingSystem;delegatevoidD(inti);classP{publicstaticvoidMain(){V(newD(R));}publicstaticvoidR(intt){V(21);}publicstaticvoidV(inti){Console.WriteLine(i.ToString());Console.ReadLine();}}以下说法正确的是(B)(选择一项)A.代码中存在错误,delegatevoidD(inti);不能定义在名称空间或者类之外B.代码中存在错误,代码行V(newD(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)处实现了拆箱。(选择一项)intage=5;objecto=age;o=10;age=(int)o;objectoAge=age;A.0B.1C.2D.337、在C#中,下列代码的运行结果是(B).(选择一项)Int[]num=newint[]{1,3,5};ArrayListarr=newArrayList();For(inti=0;inum.Length;i++){arr.Add(