《C#考试题目大全(148页).doc》由会员分享,可在线阅读,更多相关《C#考试题目大全(148页).doc(148页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、-C#考试题目大全-第 148 页C#程应用开发单项选择题 1. _是独立于CPU的指令集,它可以被高效地转换为特定于某种CPU的代码(C)A.CLR(公共语言运行库)B.CLS(公共语言规范)C.MSIL(微软中间语言)D.CTS(通用类型系统)2. 在 Visual Studio.NET窗口中,在_窗口中可以察看当前项目的类和类型的层次 信息(B)A.解决方案资源管理器B.类视图C.资源视图D.属性3. C#中每个 int 类型的变量占用_个字节的内存(C)A.1B.2C.4D.84. 在 C#中,表示一个字符串的变量应使用以下哪条语句定义? (B)A.CString str;B.stri
2、ng str;C.Dim str as stringD.char * str;5. 在 C#编制的财务程序中,需要创建一个存储流动资金金额的临时变量,则应使用下列哪 条语句? (A)A.decimal theMoney;B.int theMoney;C.string theMoney;D.Dim theMoney as double6. C#中,新建一字符串变量 str,并将字符串Toms Living Room保存到串中,则应该使用 下列哪条语句? (A)A.string str = Toms Living Room;B.string str = Toms Living Room;C.str
3、ing str(Toms Living Room);D.string str(Toms Living Room);7.C#中 MyClass 为一自定义类,其中有以下方法定义:public void Hello()使用以下语句创 建了该类的对象,并使变量 obj 引用该对象,那么,访问类MyClass的Hello方法正确的是(A)MyClass obj = new MyClass();A.obj.Hello();B.obj:Hello();C.MyClass.Hello();D.MyClass:Hello();8. 分析下列 C#语句,注意类 MyClass 没有访问修饰符: namespac
4、e ClassLibrary1class MyClasspublic class subclass int i; 若必须为类 MyClass 添加访问修饰符,并使 MyClass 的可访问域保持不变,则应选择 _(D)A.privateB.protectedC.internalD.public9. 分析下列程序: public class class4private string _sData = ; public string sDataset_sData = value; 在 Main 函数中,在成功创建该类的对象 obj 后,下列哪些语句是合法的? (B)A.obj.sData = It
5、 is funny!;B.Console.WriteLine(obj.sData);C.obj._sData = 100;D.obj.set(obj.sData);10. 分析下列程序中类 MyClass 的定义 class BaseClass public int 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); /(提示:注意类 M
6、yClass 中的 new 关键字)A.0, 0B.100, 100C.0, 100D.100, 011. 在定义类时,如果希望类的某个方法能够在派生类中进一步进行改进,以处理不同的派生类的需要,则应将该方法声明成_C_A.sealed 方法B.public 方法C.virtual 方法D.override 方法12. 类 MyClass 中有下列方法定义: public void testParams(params int arr) Console.Write (使用 Params 参数!); public void testParams(int x,int y) Console.Write
7、 (使用两个整型参数!); 请问上述方法重载有无二义性?若没有,则下列语句的输出为_C_. MyClass x = new MyClass(); x.testParams(0); x.testParams(0,1); x.testParams(0,1,2);A.有语义二义性;B.使用 Params 参数!使用两个整型参数!使用 Params 参数!C.使用 Params 参数!使用 Params 参数!使用 Params 参数!D.使用 Params 参数!使用两个整型参数!使用两个整型参数!13. C#程序中,可使用 try.catch 机制来处理程序出现的_B_错误A.语法B.运行C.逻辑
8、D.拼写14. C#中,在方法 MyFunc 内部的 try.catch 语句中,如果在 try 代码块中发生异常,并且在当前的所有 catch 块中都没有找到合适的 catch 块,则(A)A.NET 运行时忽略该异常B.NET 运行时马上强制退出该程序C.NET 运行时继续在 MyFunc 的调用堆栈中查找提供该异常处理的过程D.NET 抛出一个新的“异常处理未找到”的异常15. 在 C#中,下列哪条语句能创建一个具有 3 个初始值为的元素的字符串数组?A.string StrList3();B.string3 StrList = ,;C.string StrList = ,;D.stri
9、ng StrList = new string3;16. 下列语句创建了多少个 string 对象? Dstring, strArray = new string34;A.0B.3C.4D.1217. 接口 Animal 定义如下:public interface Animal void Move(); 则下列抽象类的定义中,哪些是不合法的? AA. abstract class Cat: Animal abstract public void Move(); B.abstract class Cat: Animal virtual public void Move() Console.Wri
10、te(Console.Write(Move!); C.abstract class Cat: Animal public void Move()Console.Write(Console.Write(Move!); D.abstract class Cat: Animal public void Eat()Console.Write(Console.Write(Eat!); 18. _C_命名空间中的类和接口用于创建 Web 应用程序的页面?A.System.DrawingB.System.IOC.System.Web.UID.System.Web.Service19. 在使用 FileStr
11、eam 打开一个文件时, 通过使用 FileMode 枚举类型的_A_成员,来 指定操作系统打开一个现有文件并把文件读写指针定位在文件尾部A.AppendB.CreateC.CreateNewD.Truncate20. 下列语句的输出是_ double MyDouble = 123456789;Console.WriteLine(0:E,MyDouble);A.$123,456,789.00B.1.234568E+008C.123,456,789.00D.123456789.0021. 下列哪个类型的对象是 ADO.NET 在非连接模式下处理数据内容的主要对象?A.CommandB.Conne
12、ctionC.DataAdapterD.DataSet22. 应用 ADO.NET 访问数据时,Connection 对象的连接字符串中 Initial Catalog 子串的含 义是:A.Connection 对象连接到的数据库的名称B.Connection 对象的身份验证信息C.Connection 对象的最大连接时间D.Connection 对象使用的缓存大小23. 在 Visual Studio .NET 中, 新建 DataAdapter 对象后, 可使用_来配置其属性A.数据适配器配置向导B.数据窗体向导C.服务器资源管理器D.对象浏览器24. 使用 Visual Studio .
13、NET 的“新建 C# 项目”创建一个名为“SimpleForm”的 Windows 表单应用程序,则在生成_文件中可设置该程序集的 CopyrightTrademark 等属性信 息A.Form1.resxB.SimpleForm.slnC.SimpleForm.csprojD.AssemblyInfo.cs25. 已知在某 Windows Form 应用程序中,主窗口类为 Form1,程序入口为静态方法 From1.Main如下所示: public class Form1 : System.Windows.Forms.Form/其他代码 static void Main()/在此添加合适代
14、码 则在 Main 方法中打开主窗口的正确代码是:A.Application.Run(new Form1();B.Application.Open(new Form1();C.(new Form1().Open();D.(new Form1().Run();26. 在 C#中,预处理器指令#region 和#endregion 的作用是:A.注释#region 和#endregion 之间的代码B.为 Code Editor 定义一段可折叠代码区C.#region 和#endregion 之间的代码在 Debug 版本中不参加编译D.#region 和#endregion 之间的代码在 Rel
15、ease 版本中不参加编译27. 用鼠标右击一个控件时出现的菜单一般称为:A.主菜单B.菜单项C.快捷菜单D.子菜单28. 变量 openFileDialog1 引用一个 OpenFileDialog 对象为检查用户在退出对话框时是否 单击了“打开”按钮,应检查 openFileDialog1.ShowDialog()的返回值是否等于_;A.DialogResult.OKB.DialogResult.YesC.DialogResult.NoD.DialogResult.Cancel29. C#程序中,为使变量 myForm 引用的窗体对象显示为对话框,必须:A.使用 myForm.ShowDa
16、ilog 方法显示对话框B.将 myForm 对象的 isDialog 属性设为 trueC.将 myForm 对象的 FormBorderStyle 枚举属性设置为 FixedDialogD.将变量 myForm 改为引用 System.Windows.Dialog 类的对象30. Windows Form 应用程序中,要求下压按钮控件Button1 有以下特性:正常情况下,该 按钮是扁平的,当鼠标指针移动到它上面时,按钮升高那么,在程序中,属性 Button1.FlatStyle 的值应设定为:A.System.Windows.Forms.FlatStyle.FlatB.System.Wi
17、ndows.Forms.FlatStyle.PopupC.System.Windows.Forms.FlatStyle.StandardD.System.Windows.Forms.FlatStyle.System31. 为保护 Web Service 不受恶意访问的攻击,应使用_保护 Web ServiceA.IIS 目录安全性B.NTFS 安全性C.共享目录安全性D.TCP/IP 安全性32. Web 表单中,按钮的默认事件是A.Click 事件B.Load 事件C.Init 事件D.Command 事件33. Web 窗体文件的扩展名为A.ASPB.ASPXC.ASCXD.HTML34.
18、 使用“新建项目Visual C# Projects 项目ASP.NET Web 应用程序”成功创建 URL 为“http:/localhost/MyWeb”的 Web 表单应用程序后,项目文件将保存在:A.本地计算机 Web 站点的 MyWeb 虚拟目录下B.本地文件共享 MyWeb 中C.另一台名为 localhost 的计算机的 Web 站点的 MyWeb 虚拟目录下D.本地目录 c:My DocumentsMyWeb 下35. 关于 ASP.NET 窗体应用程序,下列说法哪些是正确的?A.Web 窗体是在浏览器中进行解释执行的B.Web 窗体程序中脚本和代码必须严格分开C.Web 窗体
19、程序产生的 HTML 页面只能运行于 IE 浏览器D.Web 窗体程序的代码可以使用任何一种.NET 兼容的编程语言编写36. 作为程序员, 你需要为公司开发一套供员工使用的个人信息管理软件 软件需求之一是: 令每个员工可以在公司的任意一台安装有该程序的工作站上, 以自己喜爱的自定义界面运行 该程序为满足该需求,程序应优先采取下列何种策略保存每位用户的自定义设置?A.将个人设置保存到本地计算机硬盘的 XML 文件中;B.将个人设置保存到公司的 SQL Server 数据库服务器中;C.将个人设置保存到本地计算机的注册表中;D.将个人设置保存到软盘中;37. C#程序中,下列哪些预处理指令用于条
20、件编译?A.#ifB.#ifdefC.#RegionD.#error38. 关于结构类型,下列说法哪些是正确的?A.结构是值类型B.结构中不允许定义带参数的实例构造函数;C.结构中不允许定义析构函数D.结构中可以定义成员方法,但是方法内不能使用 this 指针39. .NET 安全框架中,应用程序所属的“角色”是指:A.启动该程序的用户必须处于的 Windows 本地组B.该程序运行时使用哪个 Windows 用户账号访问系统资源C.NET 框架定义的一组 Principal 对象的集合,符合这些 Principal 的程序就属于该角色D.NET 框架定义的一组资源对象的集合,处于该组的程序可
21、以访问该组的资源40. 在类的定义中,类的_描述了该类的对象的行为特征A.类名B.方法C.所属的名字空间D.私有域41. .NET 公共语言运行时的安全引擎为.NET 托管程序代码的执行提供基于_的安 全机制A.用户和密码B.证书C.证据D.数据加密42. ADO.NET 使用_命名空间的类访问 SQL Server 数据库中的数据A.System.Data.OleDbB.System.Data.SqlClientC.System.Xml.SerializationD.System.IO43. 在命令行下使用 csc 命令编译 C#源程序时, 可使用_参数来说明生成 Windows 可执行文件
22、A./target:exeB./target:winexeC./target:libraryD./target:module44. 一个多文件程序集中包含 1 个程序集清单文件3 个模块文件和 2 个资源文件下列哪 些信息包含在模块文件的元数据中?A.程序集名称B.程序集引用的的文件列表C.本模块代码D.本模块中声明的数据类型信息45. 下列哪些选项是.NET 异常处理的特点?A.NET 异常对象是一种特殊格式的 32 位整型值B.C#代码中抛出的异常对象,只能在 C#编写的代码中捕获C.无法跨越进程边界引发和捕获异常对象D.不同编程语言抛出/捕获异常对象的句法可以不同46. 以下类 MyCl
23、ass 的属性 count 属于_属性. class MyClassint i; int countget return i; A.只读B.只写C.可读写D.不可读不可写47. 在编写 ASP.NET 页面时,若希望在每次页面载入时执行某个操作,则应将相应代码写 入_事件处理程序中A.页面的 LoadB.页面的 initC.页面的 PreRenderD.页面的 Disposed 消息48. 程序集 MyWork.dll 部署在 E:MyWork下,则该程序集的配置文件应保存在:A.E: 文件夹下B.E:MyWork文件夹下C.E:MyWorkMyWork 文件夹下D.E:MyWorkMyWor
24、k.dll 文件夹下49. 某程序集的版本为: “2.0.1.112”,则该程序集的次版本号为:A.0B.1C.2D.11250. 类 MyClass 中,下列哪条语句定义了一个只读的属性 Count?A.private int Count;B.private int count; public int Count getreturn count; C.public readonly int Count;D.public readonly int Count get return count; setcount = value; 51. C#中的类型 float 对应.NET 类库中的A.Sy
25、stem.SingleB.System.DoubleC.System.Int32D.System.Int6452. 判断下列类 MyClass 的定义中哪些是合法的抽象类?A.abstract class MyClass public abstract int getCount(); B.abstract class MyClass abstract int getCount(); C.private abstract class MyClass abstract int getCount(); D.sealed abstract class MyClass abstract int getC
26、ount(); 53. 在自定义的类 MyClass 中,应重载继承自 System.Object 类的哪个方法,以实现自定义 的哈希算法?A.GetHashCodeB.EqualsC.ReferenceEqualsD.ToString54. 已知接口 IHello 和类 BaseMyClass 的定义如下 interface IHello void Hello(); class Base : IHello public void Hello() System.Console.WriteLine(Hello in Base!); class Derived : Base public void
27、 Hello() System.Console.WriteLine(Hello in Derived!); 则下列语句在控制台中的输出结果为_ IHello x = new Derived(); x.Hello();A.Hello in Base!B.Hello in Derived!C.Hello in Base!Hello in Derived!D.Hello in Derived!Hello in Base!.55. 为了将字符串 str=“123,456”转换成整数 123456,应该使用以下哪条语句?A.int Num = int.Parse(str);B.int Num = str
28、.Parse(int);C.int Num = (int)str;D.int Num = int.Parse(str,Globalization.NumberStyles.AllowThousands);56. 已知结构 Resource 的定义如下:struct Resource public int Data = 0; 则下列语句的运行结果为_ Resource list= new Resource20; for(int i = 0;i20;i+) System.Console.WriteLine(“data=0”,listi.Data); A.打印 20 行,每行输出都是 data=0B
29、.打印 20 行,每行输出都是 data=nullC.打印 20 行.第 1 行输出 data=0,第 2 行输出 data=2,.,第 20 行输出 data=19D.出现运行时异常57. 分析下列语句: namespace TestCS public delegate void Hello(string target); 该语句的作用是:A.在 TestCS 命名空间中定义了一个名为 Hello 的全局方法;B.在 TestCS 命名空间中声明了函数 Hello 的原型;C.在 TestCS 命名空间中定义了一个名为 Hello 的函数指针;D.在 TestCS 命名空间中定义了了一个名为
30、 Hello 的委托类型;58. 已知类型 DoSomething 定义如下:public delegate void DoSomething();a,b,c,d 是 DoSomething 的变量,分别有以下调用列表: a: objA.Func1objA.Func2 b: objA.Func1Class1.StaticFunc c:objA.Func1Class2.StaticFunc d: Class2.StaticFunc 其中 objA 为类 Class1 的对象,objB 为类 Class2 的对象则执行 b=b+c 后,变量 b 关联 的方法数目为:A.2B.3C.4D.559.
31、已知类 MyClass 中事件 MouseClicked 定义如下:public static event MouseClickedListener MouseClicked; 执行下列语句: MouseClicked += new MouseClickedListener(obj.DoSomething);MouseClicked += new MouseClickedListener(obj.DoSomething); 然后引发该 MouseClicked 事件,其结果为:A.obj.DoSomething 方法被调用 4 次B.obj.DoSomething 方法被调用 2 次C.obj
32、.DoSomething 方法被调用 1 次D.obj.DoSomething 方法不会被调用60. 下列代码存在一个编译错误如何消除该错误?(左边为行号) 1 public void Test(object param)2 Resource r0 = new Resource(100);3 using( Resource r1 = new Resource(100)4 r1.print();5 r1 = new Resource(50);6 7 A.第 1 行声明的 param 参数未在方法内使用删除该参数;B.第 3 行修改为:using( Resource r1 = new Resour
33、ce(100);) C.删除第 5 行D.第 5 行修改为:r1=r0;61. 在类实现的 Dispose 方法中,一般应调用_来阻止类终止器的执行A.GC.Collect();B.GC.GetGeneration(this);C.GC.ReRegisterForFinalize(this);D.GC.SuppressFinalize(this);62. 下列哪些 Stream 类不支持查找操作?A.FileStreamB.MemoryStreamC.BufferedStreamD.NetworkStream63. 整型数组 MyIntArray 的定义和初始化如下 为了将数组 MyIntAr
34、ray 的所有元素值写入 FileStream 流,可创建_类的实例对该流进行写入 int MyIntArray = new int400; for(int i = 0;i400;i+) MyIntArrayi=i;A.BinaryWriterB.StreamWriterC.TextWriterD.StringWriter64. 用 FileStream 打开一个文件时,可用 FileShare 参数控制:A.对文件执行覆盖创建打开等选项中的哪些操作;B.对文件进行只读只写还是读/写C.其他 FileStream 对同一个文件所具有的访问类型D.对文件进行随机访问时的定位参考点65. 下列哪个
35、选项不属于 URI 的组成部分?A.方案标识符B.客户机标识符C.路径标识符D.查询字符串66. 若 Internet 资源要求验证客户端身份,WebRequest.GetResponse 方法将引发一个身份验 证过程此过程成功结束后,身份验证模块将向WebRequest 实例返回一个_类实 例,该实例包含 Internet 服务器的验证消息A.AuthorizationB.WebResponseC.CookieD.NetworkCredential67. 某程序使用 System.Net 访问 Internet 资源时返回 WebException请问,其 Status 值等 于下列哪个选项
36、时,表明从服务器接收的响应是完整的,但在协议级别上有错误?A.System.Net.WebExceptionStatus.ReceiveFailureB.System.Net.WebExceptionStatus.ProtocolErrorC.System.Net.WebExceptionStatus.SendFailureD.System.Net.WebExceptionStatus.Timeout68. C#中,将类加上_属性来标记该类支持序列化A.SerializableB.FormatableC.StreamD.STAThread69. 在处理对象图的反序列化过程中,ObjectMan
37、ager 可以确定:对序列化流中的某个对象 的引用,是指向一个已经反序列化的对象,还是指向一个尚未反序列化的对象其中对已经 反序列化的对象的引用被称为_A.前向引用B.后向引用C.正引用D.反引用70. 解决方案 DoRemotingCall 包含 3 个项目 MyServerMyClientCommon,场景如下:MyServer 和 MyClient 分别为两个 C# 控制台项目, Common为 C#类库项目 其中, Common 项目实现了类 Class1 和 Class2,输出文件为 Common.dll;MyServer 引用 Common.dll,并 准备向.NET 远程处理框架
38、注册类 Class1Class2 为“服务器激活”对象;MyClient 引用 Common.dll,并希望可以通过.NET 远程处理以“服务器激活”方式访问由 MyServer 进程 创建的 Class1Class2 类的对象现在要为 MyServer 注册两个信道对象:Channel1 和 Channel2, 分别用于客户端对 Class1 和 Class2 类的对象的访问; 因此, 需要在 MyServer 的 Main 方法中注册 2 个信道注册 2 个服务器类请问,它们正确的顺序是:A.注册 Channel1注册 Channel2注册类 Class1注册类 Class2B.注册 Ch
39、annel1注册类 Class1注册 Channel2注册类 Class2C.注册类 Class1注册类 Class2注册 Channel1注册 Channel2D.注册类 Class1注册 Channel1注册类 Class2注册 Channel271. 在 IIS 服务器中承载远程对象时,应考虑使用_,从而获得 IIS 在身份验证授 权等安全方面的有力支持A.HttpChannelB.TcpChannelC.UdpChannelD.SLLChannel72. 在.NET 远程处理中,_的类的实例可以跨应用程序域进行按值封送A.实现 Iserializable 接口B.具有Serializa
40、ble属性C.实现 IObjectReference 接口D.从 MarshalByRefObject 类继承73. 为了判断线程 t1 是否是在后台运行,需访问 t1 的_属性A.CurrentThreadB.IsBackgroudC.IsAliveD.ThreadState74. 类 MyClass 中已知有以下字段定义: object i = 100,j=200, k=300; 则执行下列语句后,这 3 个字段的值是_: Interlocked.CompareExchange(ref i,j,k);A.i:100,j:200,k:300B.i:200,j:200,k:300C.i:300
41、,j:200;k:100D.i:100,j:100,k:30075. 多线程 C#程序中,类 MyClass 定义如下:class MyClassReaderWriterLock rwl = new ReaderWriterLock();private int i;public void Read()rwl.AcquireReaderLock(Timeout.Infinite);Interlocked.Increment(ref i);Thread.Sleep(1000);rwl.ReleaseReaderLock();public void Write()rwl.AcquireWriterL
42、ock(Timeout.Infinite);Interlocked.Decrement(ref i);Thread.Sleep(1000);rwl.ReleaseWriterLock(); 请问,可以有多少个线程同时调用 Read()并将 i 的值加 1?A.0 个B.1 个C.多个D.没有76. 利用_服务,托管代码可以调用在动态链接库 (DLL)(如 Win32 API 中的 DLL)中实现的非托管函数A.平台调用B.运行库可调用包装C.COM 可调用包装D.信道77. 在 ADO.NET 中,执行数据库的某个存储过程,则至少需要创建_并设置它们的 属性,调用合适的方法:A.一个 Conn
43、ection 对象和一个 Command 对象B.一个 Connection 对象和 DataSet 对象C.一个 Command 对象和一个 DataSet 对象D.一个 Command 对象和一个 DataAdapter 对象78. 在使用 ADO.NET 编写连接到 SQL Server 2000 数据库的应用程序时,从提高性能角度 考虑,应创建_类的对象,并调用其 Open 方法连接到数据库A.ConnectionB.SqlConnectionC.OleDbConnectionD.OdbcConnection79. 在 ADO.NET 中,DataAdapter 对象下列哪个 Comm
44、and 属性用于将 DataSet 中的新增 记录保存到数据源?A.Select CommandB.Insert CommandC.Update CommandD.Delete Command80. 在 C#程序中,可以使用_属性来引用处于非托管代码环境中的函数A.DllImportB.ConditionalC.STAThreadD.SecureMethod81. 为了确定是否为类 MyClass 附加了属性 NameAttribute,应使用以下哪个语句?A.bool b = typeof(MyClass).IsDefined(typeof(NameAttribute),false);B.bool b = typeof(MyClass).IsDefined(typeof(Name),false);C.bool b = typeof(MyClass).HasDefined(typeof(NameAttribute),