C单项选择题.doc

上传人:本田雅阁 文档编号:2725803 上传时间:2019-05-08 格式:DOC 页数:28 大小:150KB
返回 下载 相关 举报
C单项选择题.doc_第1页
第1页 / 共28页
C单项选择题.doc_第2页
第2页 / 共28页
C单项选择题.doc_第3页
第3页 / 共28页
C单项选择题.doc_第4页
第4页 / 共28页
C单项选择题.doc_第5页
第5页 / 共28页
点击查看更多>>
资源描述

《C单项选择题.doc》由会员分享,可在线阅读,更多相关《C单项选择题.doc(28页珍藏版)》请在三一文库上搜索。

1、C# 单项选择题(必须做完)单项选择题 1 (共75题)1. _是独立于CPU 的指令集,它可以被高效地转换为特定于某种CPU 的代码。A. CLR B. CLS C. MSIL D. XML Web Service 正确答案:C2. 在Visual Studio.NET窗口中,在_窗口中可以察看当前项目的类和类型的层次信息。A. 解决方案资源管理器B. 类视图C. 资源视图D. 属性正确答案:B3. C#中每个int 类型的变量占用_个字节的内存。A. 1 B. 2 C. 4 D. 8 正确答案:C4. 在C#中,表示一个字符串的变量应使用以下哪条语句定义?A. CString str; B

2、. string str; C. Dim str as string D. char * str; 正确答案:B5. 在C#编制的财务程序中,需要创建一个存储流动资金金额的临时变量,则应使用下列哪条语句?A. decimal theMoney; B. int theMoney; C. string theMoney; D. Dim theMoney as double 正确答案:A6. C#中,新建一字符串变量str,并将字符串Toms Living Room保存到串中,则应该使用下列哪条语句?A. string str = Toms Living Room; B. string str =

3、Toms Living Room; C. string str(Toms Living Room); D. string str(Toms Living Room); 正确答案:A7. C#中MyClass 为一自定义类,其中定义了以下方法public void Hello()使用以下语句创建了该类的对象,并使变量obj 引用该对象:MyClass obj = new MyClass();那么,可如何访问类MyClass 的Hello 方法?A. obj.Hello(); B. obj:Hello(); C. MyClass.Hello(); D. MyClass:Hello(); 正确答案:

4、A8. 分析下列C#语句,注意类MyClass 没有访问修饰符:namespace ClassLibrary1class MyClasspublic class subclassint i;若必须为类MyClass 添加访问修饰符,并使MyClass 的可访问域保持不变,则应选择_。A. private B. protected C. internal D. public 正确答案:C9. 分析下列程序:public class class4private string _sData = ;public string sDataset_sData = value; 在Main 函数中,在成功创

5、建该类的对象obj 后,下列哪些语句是合法的?A. obj.sData = It is funny!; B. Console.WriteLine(obj.sData); C. obj._sData = 100; D. obj.set(obj.sData); 正确答案:A10. 分析下列程序中类MyClass 的定义class BaseClasspublic int i;class MyClass : BaseClasspublic new int i;则下列语句在Console上的输出为_.MyClass y = new MyClass();BaseClass x = y;x.i = 100;

6、Console.WriteLine(0, 1, x.i, y.i);(提示:注意类 MyClass 中的new 关键字)A. 0, 0 B. 100, 100 C. 0, 100 D. 100, 0 正确答案:D11. 在定义类时,如果希望类的某个方法能够在派生类中进一步进行改进,以处理不同的派生类的需要,则应将该方法声明成_。A. sealed 方法B. public 方法C. virtual 方法D. override 方法正确答案:C12. 类MyClass 中有下列方法定义:public void testParams(params int arr) Console.Write (使用

7、Params参数!);public void testParams(int x,int y) Console.Write (使用两个整型参数!);请问上述方法重载有无二义性?若没有,则下列语句的输出为_.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 参数!使用两个整型参数!使用两个整型参数

8、!正确答案:B13. C#程序中,可使用trycatch 机制来处理程序出现的_错误。A. 语法B. 运行C. 逻辑D. 拼写正确答案:B14. 在C#中,在方法MyFunc 内部的try.catch 语句中,如果在try 代码块中发生异常,并且在当前的所有catch 块中都没有找到合适的catch 块,则A. .NET 运行时忽略该异常B. .NET 运行时马上强制退出该程序C. .NET 运行时继续在MyFunc 的调用堆栈中查找提供该异常处理的过程D. .NET 抛出一个新的“异常处理未找到”的异常正确答案:C15. 在C#中,下列哪些语句可以创建一个具有3 个初始值为的元素的字符串数组

9、?A. string StrList 3 (); B. string 3 StrList = ,; C. string StrList = ,; D. string StrList = new string 3; 正确答案:C16. 下列语句创建了多少个string 对象?string , strArray = new string 3, 4;A. 0 B. 3 C. 4 D. 12 正确答案:D17. 接口Animal 定义如下:public interface Animalvoid Move();则下列抽象类的定义中,哪些是不合法的?A. abstract class Cat: Anima

10、labstract public void Move(); B. abstract class Cat: Animal virtual public void Move()Console.Write(Move!); C. abstract class Cat: Animal public void Move()Console.Write(Move!); D. abstract class Cat: Animalpublic void Eat()Console.Write(Eat!);正确答案:D18. 在使用FileStream 打开一个文件时,通过使用FileMode 枚举类型的_成员,来指

11、定操作系统打开一个现有文件并把文件读写指针定位在文件尾部。A. Append B. Create C. CreateNew D. Truncate 正确答案:A19. 关于结构类型,下列说法哪些是正确的?A. 结构是值类型B. 结构中不允许定义带参数的实例构造函数;C. 结构中允许定义析构函数D. 结构中可以定义成员方法,但是方法内不能使用this 指针正确答案:A20. 在类的定义中,类的_描述了该类的对象的行为特征。A. 类名B. 方法C. 所属的名字空间D. 私有域正确答案:B21. 下列哪些选项是.NET 异常处理的特点?A. .NET 异常对象是一种特殊格式的32 位整型值B. C#

12、代码中抛出的异常对象,只能在C#编写的代码中捕获C. 无法跨越进程边界引发和捕获异常对象D. 不同编程语言抛出/捕获异常对象的语法可以不同正确答案:D22. 以下类MyClass 的属性count 属于_属性.class MyClassint i;int countget return i; A. 只读B. 只写C. 可读写D. 不可读不可写正确答案:A23. 类MyClass 中,下列哪条语句定义了一个只读的属性Count?A. private int Count;B. private int count;public int Countgetreturn count;C. public r

13、eadonly int Count;D. public readonly int Countget return count;setcount = value;正确答案:B24. C#中的类型float 对应.NET 类库中的_。A. System.SingleB. System.DoubleC. System.Int32D. System.Int64 正确答案:A25. 判断下列类MyClass 的定义中哪些是合法的抽象类?A. abstract class MyClass public abstract int getCount(); B. abstract class MyClass a

14、bstract int getCount(); C. private abstract class MyClass abstract int getCount(); D. sealed abstract class MyClass abstract int getCount(); 正确答案:A26. 已知接口IHello 和类Base、MyClass 的定义如下interface IHello void Hello();class Base : IHellopublic void Hello()System.Console.WriteLine(Hello in Base!);class Der

15、ived : Base public void 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!正确答案:A27. 为了将字符串str = “123,456”转换成整数123456,应该使用以下哪条语句?A. int Num =

16、int.Parse(str);B. int Num = str.Parse(int);C. int Num = (int)str;D. int Num = int.Parse(str,System.Globalization.NumberStyles.AllowThousands); 正确答案:D28. 已知结构Resource 的定义如下:struct Resourcepublic int Data;则下列语句的运行结果为_。Resource list = new Resource 20; for ( int i = 0; i 正确答案:B41. 能正确表示逻辑关系“a = 10 或a =

17、10 or a = 10 | a = 10 & a = 10 | a b ? (a c ? a : c) : b);A.5 B.4 C.6 D.不确定正确答案:C43. if语句后面的表达式应该是_。A. 逻辑表达式B. 条件表达式C. 算术表达式D. 任意表达式正确答案:B44. 有如下程序:using System;class Example1public static void Main() int x = 1, a = 0, b = 0; switch(x) case 0:b+;break; case 1:a+;break; case 2:a+;b+;break; Console.Wr

18、iteLine(“a = 0, b = 1”, a, b);的输出结果是_。A. a = 2, b = 1B. a = 1, b = 1C. a = 1, b = 0D. a = 2, b = 2正确答案:C45. 以下叙述正确的是_。A. do.while语句构成的循环不能用其他语句构成的循环来代替B. do.while语句构成的循环只能用break语句退出C. 用do.while语句构成的循环,在while后的表达式为true时结束循环D. 用do.while语句构成的循环,在while后的表达式应为关系表达式或逻辑表达式正确答案:D46. 以下关于for循环的说法不正确的是_。A. fo

19、r循环只能用于循环次数已经确定的情况B. for循环是先判定表达式,后执行循环体语句C. for循环体语句中,可以用break语句跳出循环体D. for循环体语句中,可以包含多条语句,但要用花括号括起来正确答案:A47. 假定int类型变量占用四个字节,若有定义:int x = new int 10 0, 2, 4, 4, 5, 6, 7, 8, 9, 10;则数组x在内存中所占字节数是_。A. 6B. 20C. 40D. 80正确答案:C48. 以下程序的输出结果是:class Example1public static void Main() int i; int a = new int

20、10; for( i = 9; i = 0; i-) ai = 10 - i; Console.WriteLine(“0, 1, 2”, a2, a5, a8); A. 2 5 8 B. 7 4 1 C. 8 5 2 D. 3 6 9正确答案:C49. 有定义语句:int , a = new int5,6; 则下列正确的数组元素的引用是_。A. a(3,4) B. a(3)(4) C. a34 D. a3,4正确答案:D50.下列的数组定义语句,不正确的是_。A. int a = new int 5 1, 2, 3, 4, 5B. int , a = new int 34C. int a =

21、new int 3;D. int a = 1, 2, 3, 4;正确答案:A B51. 关于C#语言的方法,下列叙述中正确的是_。A. 方法的定义不能嵌套,但方法调用可以嵌套B. 方法的定义可以嵌套,但方法调用不能嵌套C. 方法的定义和调用都不能嵌套D. 方法的定义和调用都可以嵌套正确答案:A52. 以下所列的各个方法头中,正确的是_。A. void play(var a: Integer, var b: Integer)B. void play(int a,b)C. void play(int a, int b)D. Sub play(a as integer, b as integer)正

22、确答案:C53. 下列程序的输出结果是:using System;class Example1 static long fib(int n) if (n 2)return (fib(n-1) + fib(n-2); else rerurn(2); public static void Main()Console.WriteLine(“0”, fib(3);A.2 B.4 C.6 D.8正确答案:B54.下列程序的输出结果是_。using System;class Example1 static long sub(int x, int y) int z; z = x * x + y * y; r

23、eturn z; public static void Main()int a = 30; sub(5, 2); Console.WriteLine(“0”, a);A. 0 B. 29 C. 30 D. 无定值正确答案:C55. 下列程序的执行结果是_。using System;class Example1enum team my, your = 4, his, her = his + 10; public static void Main()Console.WriteLine(“0, 1, 2, 3”, (int)team.my, (int)team.your, (int)team.his

24、, (int)team.her);A. 0 1 2 3 B. 0 4 0 10 C. 0 4 5 15 D. 1 4 5 15正确答案:C56以下对枚举的定义,正确的是_。A. enum a = one, two, threeB. enum a a1, a2, a3;C. enum a = 1, 2, 3;D. enum a “one”, ”two”, ”three”;正确答案:B57. 枚举型常量的值不可以是_类型A. int B. long C. ushort D. double正确答案:D58. 调用重载方法时,系统根据_来选择具体的方法。A. 方法名B. 参数的个数和类型C. 参数名及

25、参数个数D. 方法的返回值类型正确答案:B59. 下列的_不是构造函数的特征。A. 构造函数的函数名和类名相同B. 构造函数可以重载C. 构造函数可以带有参数D. 可以指定构造函数的返回值正确答案:D60. 类ClassA有一个名为M1的方法,在程序中有如下一段代码,假设该段代码是可以执行的,则修饰M1方法时一定使用了_修饰符。 ClassA obj = new ClassA(); ClassA.M1();A. publicB. staticC. privateD. virtual正确答案:B61. 已知类B是由类A继承而来,类A中有一个名为M的非虚方法,现在希望在类B中也定义一个名为M的方法

26、,若希望编译时不出现警告信息,则在类B中声明该方法时,应使用_修饰符。A. staticB. newC. overrideD. virtual正确答案:B62. 下列关于trycatchfinaly语句的说明中,不正确的是_。A. catch块可以有多个B. finally块是可选的C. catch块也是可选的D. 可以只有try块正确答案:D63. 为了能够在程序中捕获所有的异常,在catch语句的括号中使用的类名为_。A. ExceptionB. DivideByZeroExceptionC. FormatExceptionD. 以上三个均可正确答案:A64. 关于异常,下列的说法中不正确

27、的是_。A. 用户可以根据需要抛出异常B. 被调用方法可通过throw语句把异常传回给调用方法C. 用户可以自己定义异常D. 在C#中有些异常不能被捕获正确答案:D65. 下列说法中正确的是_。A. 在C#中,编译时,对数组下标越界将作检查B. 在C#中,程序运行时,数组下标越界也不会产生异常C. 在C#中,程序运行时,数组下标越界是否产生异常由用户确定D. 在C#中,程序运行时,数组下标越界一定会产生异常正确答案:D66. 下面对Read()和ReadLine()方法的描述,哪些是正确的_。A. Read()方法一次只能从输入流中读取一个字符B. 使用Read()方法读取的字符不包含回车和换

28、行符C. 使用ReadLine()方法读取的字符不包含回车和换行符D. 只有当用户按下回车键时,Read( )和ReadLine()方法才会返回正确答案:A C D67. 下面对Write()和WriteLine()方法的描述,哪些是正确的_。A. WriteLine()方法在输出字符串的后面添加换行符B. 使用Write()输出字符串时,光标将会位于字符串的后面C. 使用Write()和WriteLine()方法输出数值变量时,必须要先把数值变量转换成字符串D. 使用不带参数的WriteLine()方法时,将不会产生任何输出正确答案:A B D68 以下标识符中,正确的是_。A. _nNam

29、eB. typeofC. 6bD. x5#正确答案:A69 以下类型中,不属于值类型的是_。A. 整数类型B. 布尔类型C. 字符类型D. 类类型正确答案:D70 已知a, b, c的值分别是4, 5, 6,执行下面的程序段后,判断变量n的值为_。if (c b)n = a + b + c;else if ( a + b c) n = c - a - b;else n = a + b;A. 3 B. -3 C. 9 D. 15正确答案:C71while语句循环结构和dowhile 语句循环结构的区别在于_。A. while语句的执行效率较高B. dowhile语句编写程序较复杂C. 无论条件是

30、否成立, while语句都要执行一次循环体D. dowhile循环是先执行循环体,后判断条件表达式是否成立,而while语句是先判断条件表达式,再决定是否执行循环体.正确答案:D72 假设给出下面代码:try throw new OverflowException();catch (FileNotFoundException e)catch (OverflowException e)catch (SystemException e)catchfinally则下面哪些语句会得到执行_。A. catch (OverflowException e) B. catch (OverflowExcepti

31、on e) B. catch (SystemException e) D. catch E. finally 正确答案:B E73. 下面是几条定义初始化一维数组的语句, 指出其中正确的是_。A. int arr1 = 6, 5, 1, 2, 3;B. int arr1 = new int ;C. int arr1 = new int 6, 5, 1, 2, 3;D. int arr1;arr1 = 6, 5, 1, 2, 3;正确答案:C74. 下面是几条动态初始化一维数组的语句, 指出其中正确的是_。A. int arr2 = new int ;B. int arr2 = new int 4;C. int arr2 = new int i 6, 5, 1, 2, 3;D. int arr2 = new int 4 6, 5, 1, 2, 3;正确答案:B75. 下面是几条定义并初始化而维数组的语句,指出其中正确的是_。A. int arr3 = new int 4,5;B. int arr3 = new int 4,5;C. int arr

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1