C#1-6章习题 - 答案

更新时间:2023-11-10 16:41:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

C#习题练习(1-6章)

1. 在 Visual Studio.NET窗口中,在__________窗口中可以察看当前项目的类和类型的层次信息? (B) A.解决方案资源管理器 B.类视图 C.资源视图 D.属性

2. C#中每个 int 类型的变量占用_______个字节的内存?(C) A.1 B.2 C.4 D.8

3. 在 C#中,表示一个字符串的变量应使用以下哪条语句定义? (B) A.CString str; B.string str;

C.Dim str as string D.char * str;

4. 在 C#编制的财务程序中,需要创建一个存储流动资金金额的临时变量,则应使用下列哪条语句? (A)

A.decimal theMoney; B.int theMoney; C.string theMoney;

D.Dim theMoney as double

5. C#中,新建一字符串变量 str,并将字符串\保存到串中,则应该使用下列哪条语句? (A)

A.string str = \B.string str = \C.string str(\D.string str(\

6.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();

7. 分析下列 C#语句,注意类 MyClass 没有访问修饰符: namespace ClassLibrary1 {

class MyClass {

public class subclass { int i; } }

}

若必须为类 MyClass 添加访问修饰符,并使 MyClass 的可访问域保持不变,则应选择 _________?(D) A.private B.protected C.internal D.public

8. 分析下列程序: public class class4 {

private string _sData = \

public string sData{set{_sData = value;}} }

在 Main 函数中,在成功创建该类的对象 obj 后,下列哪些语句是合法的? (A) A.obj.sData = \B.Console.WriteLine(obj.sData); C.obj._sData = 100; D.obj.set(obj.sData);

9. 分析下列程序中类 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(\提示:注意类 MyClass 中的 new 关键字) A.0, 0 B.100, 100 C.0, 100 D.100, 0

10. 在定义类时,如果希望类的某个方法能够在派生类中进一步进行改进,以处理不同的派生类的需要,则应将该方法声明成____?(C) A.sealed 方法 B.public 方法 C.virtual 方法 D.override 方法

11. 类 MyClass 中有下列方法定义:

public void testParams(params int[] arr) { Console.Write (\使用 Params 参数!\

public void testParams(int x,int y)

{ Console.Write (\使用两个整型参数!\

请问上述方法重载有无二义性?若没有,则下列语句的输出为_______. (B) 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 参数!使用两个整型参数!使用两个整型参数!

12. C#程序中,可使用 try..catch 机制来处理程序出现的_____错误?(B) A.语法 B.运行 C.逻辑 D.拼写

13. C#中,在方法 MyFunc 内部的 try..catch 语句中,如果在 try 代码块中发生异常,并且在当前的所有 catch 块中都没有找到合适的 catch 块,则(D) A.NET 运行时忽略该异常

B.NET 运行时马上强制退出该程序

C.NET 运行时继续在 MyFunc 的调用堆栈中查找提供该异常处理的过程 D.NET 抛出一个新的“异常处理未找到”的异常

14. 在 C#中,下列哪条语句能创建一个具有 3 个初始值为\的元素的字符串数组? (C) A.string StrList[3](\

B.string[3] StrList = {\C.string[] StrList = {\D.string[] StrList = new string[3];

15. 下列语句创建了多少个 string 对象? (D) string[,] strArray = new string[3][4]; A.0 B.3 C.4 D.12

16. 接口 Animal 定义如下: public interface Animal { void Move(); }

则下列抽象类的定义中,哪些是不合法的? (D)

A.abstract class Cat: Animal { abstract public void Move(); } B.abstract class Cat:Animal{virtual public void Move(){ Console.Write(Console.Write(\C.abstract class Cat: Animal { public void Move(){Console.Write(Console.Write(\D.abstract class Cat: Animal { public void Eat(){Console.Write(Console.Write(\

17. 关于结构类型,下列说法哪些是正确的? (A) A.结构是值类型

B.结构中不允许定义带参数的实例构造函数; C.结构中不允许定义析构函数

D.结构中可以定义成员方法,但是方法内不能使用 this 指针

18. 下列语句的输出是________? (B) double MyDouble = 123456789;

Console.WriteLine(\A.$123,456,789.00 B.1.234568E+008 C.123,456,789.00

19.已知在某 Windows Form 应用程序中,主窗口类为 Form1,程序入口为静态方法 From1.Main?如下所示:

public class Form1 : System.Windows.Forms.Form {

//其他代码 static void Main() {

//在此添加合适代码 } } 则在 Main 方法中打开主窗口的正确代码是: (A) A.Application.Run(new Form1()); B.Application.Open(new Form1()); C.(new Form1()).Open(); D.(new Form1()).Run();

20. 用鼠标右击一个控件时出现的菜单一般称为: (C) A.主菜单 B.菜单项 C.快捷菜单 D.子菜单

21. 变量 openFileDialog1 引用一个 OpenFileDialog 对象?为检查用户在退出对话框时是否 单击了“打开”按钮,应检查 openFileDialog1.ShowDialog()的返回值是否等于_______;(A)

A.DialogResult.OK B.DialogResult.Yes C.DialogResult.No D.DialogResult.Cancel

22. C#程序中,为使变量 myForm 引用的窗体对象显示为对话框,必须: (A) A.使用 myForm.ShowDailog 方法显示对话框 B.将 myForm 对象的 isDialog 属性设为 true

C.将 myForm 对象的 FormBorderStyle 枚举属性设置为 FixedDialog D.将变量 myForm 改为引用 System.Windows.Dialog 类的对象

23. Windows Form 应用程序中,要求下压按钮控件Button1 有以下特性:正常情况下,该 按钮是扁平的,当鼠标指针移动到它上面时,按钮升高?那么,在程序中,属性 Button1.FlatStyle 的值应设定为: (B) A.System.Windows.Forms.FlatStyle.Flat

B.System.Windows.Forms.FlatStyle.Popup C.System.Windows.Forms.FlatStyle.Standard D.System.Windows.Forms.FlatStyle.System

24. 在类的定义中,类的__________描述了该类的对象的行为特征?(A) A.类名 B.方法

C.所属的名字空间 D.私有域

25. 以下类 MyClass 的属性 count 属于_____属性. (A) class MyClass {

int i; int count

{

get{ return i;} } } A.只读 B.只写 C.可读写

D.不可读不可写

26. 类 MyClass 中,下列哪条语句定义了一个只读的属性 Count? (B) A.private int Count;

B.private int count; public int Count{ get{return count;} } C.public readonly int Count; D.public readonly int Count

{ get{ return count;} set{count = value;} } 27. C#中的类型 float 对应.NET 类库中的(A) A.System.Single B.System.Double C.System.Int32 D.System.Int64

28. 判断下列类 MyClass 的定义中哪些是合法的抽象类? (A)抽象成员不能是私有的 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 getCount(); }

29. 已知接口 IHello 和类 Base?MyClass 的定义如下 interface IHello { void Hello(); }

class Base : IHello

{ public void Hello() {System.Console.WriteLine(\class Derived : Base

{ public void Hello() { System.Console.WriteLine(\则下列语句在控制台中的输出结果为__(A)___? 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!..

30. 为了将字符串 str=“123,456”转换成整数 123456,应该使用以下哪条语句? (A) A.int Num = int.Parse(str); B.int Num = str.Parse(int); C.int Num = (int)str;

D.int Num = int.Parse(str,Globalization.NumberStyles.AllowThousands); 31. 已知结构 Resource 的定义如下: struct Resource{ public int Data = 0;

} 则下列语句的运行结果为_________? (D)//结构中不能有实例字段初始值设定项 Resource[] list= new Resource[20];

for(int i = 0;i<20;i++){ System.Console.WriteLine(“data={0}”,list[i].Data); } A.打印 20 行,每行输出都是 data=0 B.打印 20 行,每行输出都是 data=null

C.打印 20 行.第 1 行输出 data=0,第 2 行输出 data=2,.,第 20 行输出 data=19 D.出现运行时异常

32. 关于 C#程序的书写,下列不正确的说法是____?(D) A.区分大小写

B.一行可以写多条语句 C.一条语句可写成多行

D.一个类中只能有一个 Main()方法,因此多个类中可以有多个 Main()方法 33. 在 C#语言中,下列能够作为变量名的是____?(C) A.if B.3ab C.a_3b D.a-bc

34. 在 C#语言中,下面的运算符中,优先级最高的是__(A)__? A.% B.++ C./= D.>>

35. 能正确表示逻辑关系“a>=10 或 a<=0”的 C#语言表达式是__(D)__? A.a>=10 or a<=0 B.a>=10|a<=0 C.a>=10&&a<=0 D.a>=10||a<=0

36. 以下程序的输出结果是__(C)__? Using system;

Class Example1 {

Public Static void main() {

Int a=5,b=4,c=6,d;

Console.Writeline(“{0}”,d=a>b?(a>c?a:c):b); } } A.5 B.4 C.6 D.不确定

37. if语句后面的表达式应该是__(A)__? A.逻辑表达式 B.条件表达式 C.算术表达式 D.任意表达式

38.有如下程序 Using system; Class Example1 {

Public 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.Writeline(“a={0},b={1}”,a,b); } }的输出结果是(C)// 代码有误,break前面“,”都改为“;” A.a=2,b=1 B.a=1,b=1 C.a=1,b=0 D.a=2,b=2

39. 以下叙述正确的是__(C)__?

A.do?.while语句构成的循环不能用其他语句构成的循环来代替 B.do?.while语句构成的循环只能用 break语句退出

C.用 do?.while语句构成的循环,在 while后的表达式为 true时结束循环

D.用 do?.while语句构成的循环,在 while后的表达式应为关系表达式或逻辑表达式 40. 以下关于 for 循环的说法不正确的是__(A)__? A.for 循环只能用于循环次数已经确定的情况 B.for 循环是先判定表达式,后执行循环体语句 C.for 循环中,可以用 break语句跳出循环体

D.for 循环体语句中,可以包含多条语句,但要用花括号括起来?

41. 假定 int 类型变量占用两个字节,若有定义:int [] x=new

int[10]{0,2,4,4,5,6,7,8,9,10};

则 数组 x 在内存中所占字节数是___(B)? A.6 B.20 C.40 D.80

42. 以下程序的输出结果是: (C)Class Example1 {

Public Static void main() { Int I;

Int []a=new int[10]; For(i=9; i>=0;

i--) a[i]=10-I;

Console.Writeline(“{0},{1}{2}”,a[2],a[5],a[8]); }} A.258 B.741 C.852 D.369

43. 有定义语句:int [,]a=new int[5,6]; 则下列正确的数组元素的引用是____?(C) A.a(3,4) B.a(3)(4) C.a[3][4] D.a[3,4]

44.下列的数组定义语句,不正确的是____?(D) A.int a[]=new int[5]{1,2,3,4,5} B.int[,]a=new inta[3][4] C.int[][]a=new int [3][]; D.int []a={1,2,3,4};

45. 关于 C#语言的方法,下列叙述中正确的是___(A)_? A.方法的定义不能嵌套,但方法调用可以嵌套 B.方法的定义可以嵌套,但方法调用不能嵌套 C.方法的定义和调用都不能嵌套 D.方法的定义和调用都可以嵌套

46. 以下所列的个方法头部中,正确的是___?_(C) 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) 47. 下列程序的结果是: (B) 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

49. 下列程序的执行结果是____? Using system; (C) 代码有误,team后面的“=”去掉 Class Example1 {

enum 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, (int)team.her); } }

A.0 1 2 3 B.0 4 0 10 C.0 4 5 15 D.1 4 5 15

50.以下对枚举的定义,正确的是__(B)__? A.enum a={one.two,three} B.enum a {a1,a2,a3};

C.enum a={‘1’,’2’,’3’}; D.enum a

{“one”,”two”,”three”};

51. 枚举型常量的值不可以是__(D)__类型 A.int B.long C.ushort D.doule

52. 调用重载方法时,系统根据___(B)_____来选择具体的方法? A.方法名

B.参数的个数和类型 C.参数名及参数个数 D.方法的返回值类型

53. 下列的_______不是构造函数的特征?(D)

A.构造函数的函数名和类名相同 B.构造函数可以重载 C.构造函数可以带有参数 D.可以指定构造函数的返回值

54. 类 Class A有一个名为M1 的方法,在程序中有如下一段代码,假设该段代码是可以执 行的,则修饰 M1 方法时一定使用了___(B)_____修饰符? Class Aobj=new Class A(); ClassA.M1(); A.public B.static C.private D.virtual

55. 已知类 B 是由类 A继承而来,类 A 中有一个为 M 的非虚方法,现在希望在类 B 中也 定义一个名为 M 的方法,若希望编译时不出现警告信息,则在类 B中声明该方法时,应使 用___(B)_____方法? A.static B.new

C.override D.virtual

56. 下列关于 try?catch?finaly语句的说明中,不正确的是_____(D)____? A.catch块可以有多个 B.finaly

C.catch块也是可选的 D.可以只有 try块

57. 为了能够在程序中捕获所有的异常,在 catch语句的括号中使用的类名为_________?(A)

A.Exception

B.DivideByZeroException C.FormatException D.以上三个均可

58. 关于异常,下列的说法中不正确的是____(D)_____? A.用户可以根据需要抛出异常

B.在被调用方法可通过 throw语句把异常传回给调用方法 C.用户可以自己定义异常

D.在 C#中有的异常不能被捕获

59. 下列说法中正确的是__(D)_______? A.在 C#中,编译时对数组下标越界将作检查

B.在 C#中,程序运行时,数组下标越界也不会产生异常

C.在 C#中,程序运行时,数组下标越界是否产生异常由用户确定 D.在 C#中,程序运行时,数组下标越界一定会产生异常

60. 要使窗体刚运行时,显示在屏幕的中央,应设置窗体的___(B)______属性? A.WindowsState B.StartPostion C.CenterScreen

D.CenterParenr

61. 要使文本框控件能够显示多行而且能够自动换行,应设置它的___(B)______属性? A.MaxLength和 Multline B.Multlineh和 WordWrap C.PassWordChar 和 Multline D.MaxLength和 WordWrap

63. 要使复选框控件能够显示出三种状态,应首先设置它的______(C)___属性? A.ThreeState B.Checked C.CheckState D.Indeterminate

65. 在设计菜单时,若希望某个菜单项前面有一个“√”号,应把该菜单项的__________ 属性设置为 true?(A)_ A.Checked B.RadioCheck C.ShowShortcut D.Enabled

66. 下面对 Read( )和 ReadLine( )方法的描述,哪些是正确的_____?(A)(D) A.Read( )方法一次只能从输入流中读取一个字符 B.使用 Read()方法读取的字符不包含回车和换行符 C.ReadLine()方法读取的字符不包含回车和换行符

D.只有当用户按下回车键时,Read( )和 ReadLine()方法才会返回

67. 下面对 Write()和 WriteLine()方法的描述,哪些是正确的____?(A) (B) (D) A.WriteLine()方法在输出字符串的后面添加换行符

B.使用 Write()输出字符串时,光标将会位于字符串的后面

C.使用 Write()和 WriteLine()方法输出数值变量时,必须要先把数值变量转换成字符串 D.使用不带参数的 WriteLine()方法时,将不会产生任何输出 69. 以下标识符中,正确的是____?(A) A._nName B.typeof C.6b D.x5#

70. 以下类型中,不属于值类型的是____?(D) A.整数类型 B.布尔类型 C.字符类型 D.类类型

71. 结构化的程序设计的 3 种基本结构是_____?(D) A.顺序结构,If结构,for 结构

B.if 结构,if?..else结构 else if结构 C.while结构,do?.while结构,foreach结构 D.顺序结构,分支结构,循环结构

72 已知 a,b,c的值分别是 4,5,6,执行下面的程序段后,判断变量 n的值为____?(C) if(c

else if(a+b

73. while语句循环结构和 do?while 语句循环结构的区别在于____?(D) A.while语句的执行效率较高 B.do?while语句编写程序较复杂

C.无论条件是否成立,while语句都要执行一次循环体

D.do?while循环是先执行循环体,后判断条件表达式是否成立,而 while语句是先判断条 件表达式,再决定是否执行循环体.

74. 下面有关 for 语句的描述有错误的是____?(A)

A.使用 for 语句时,可以省略其中的某个或多个表达式,但不能同时省略全部 3 个表达式 B.在省略 for 语句的某个表达式时,如果该表达式后面原来带有分号,则一定要保留它所 带的分号

C.在 for 语句表达式中,可以直接定义循环变量,以简化代码 D.for 语句的表达式可以全部省略

75. 下面有关 break,continue 和 goto语句描述正确的是____?(D) A.break 语句和 continue语句都是用于终止当前整个循环 B.使用 break语句可以一次跳出多重循环

C.使用语句可以方便地跳出多重循环,因而编程时应尽可能多使用 goto语句

D.goto语句必须和标识符配合使用,break和 continue语句则不然 76. 下面是几条定义初始化一维数组的语句,指出其中正确的是____?(D) 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};

77 下面是几条动态初始化一维数组的语句,指出其中正确的是____?没有答案 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};

78. 下面是几条定义并初始化而维数组的语句,指出其中正确的是____?(D) A.int arr3[ ][ ]=new int[4,5]; B.int [ ][ ] arr3=new int[4,5]; C.int arr3[,]=new int[4,5] D.int[, ] arr3=new int[4,5];

79. 下面有关枚举成员赋值说法正确的是____?(D)

A.在定义枚举类型时,至少要为其中的一个枚举成员赋一个常量值

B.在定义枚举类型时,直接为某个枚举成员赋值,则其他枚举成员依次取值

C.在把一个枚举成员的值赋给另一个枚举成员时,可以不考虑它们在代码中出现的顺序 D.在定义的一个枚举类型中,任何两个枚举成员都不能具有相同的常量值

80.下列哪一项正确描述了 Visual Studio.NET与 .NET Framework之间的关系( )?(D) A.Visual Studio.NET与 .NET Framework之间没有关系

B.可以使用 Visual Studio.NET IDE 或者简单的文本编辑器创建应用程序,应用程序运行 时需要使用.NET Framework

C.开发应用程序时需要.NET Framework,但是在运行 Visual Studio.NET创建的应用程序 时不需要它? D.都不对?

81.下列各选项中,哪个选项不是.NET Framework的组成部分( )?(A) A.应用程序开发程序

B.公共语言规范和.NET Framework类库 C.语言编辑器

D.JIT编辑器和应用程序执行管理

85.引用类型和值类型之间的区别是( )?(A)

A.引用类型变量保存内存地址,值类型直接保存变量值 B.引用类型在变量中直接保存变量值,值类型保存内存地址 C.引用类型和值类型保存数据的方式相同

D..NET Framework不支持值类型,因为所有的类型都是引用类型了 86.下列关于命名空间描述不正确的是( )?(D)

A.命名空间就是.NET Framework中相关类和命名空间的集合

B.System.Windows.Forms 命名空间定义了包含工具箱中的控件及窗体自身的类 C.命名控件中的所有类都是从同一个基类中继承的 D.上述都对

88.下面哪一项是 System.Convent 类的有效方法( )?(C) A.ToInteger?ToBigger?ToData B.ToConvert?TocurrentData C.ToInt32?ToInt64?Todouble D.都不对

90.下列类型中为值类型的是____.(C) A.字符串类型 B.树组类型 C.枚举类型 D.接口类型

91.下列给出的变量名正确的是_____.(B) A.int NO.1 B.char use C.float Main D.char @use

93.下面有关运算符的说法正确的是____(D)

A.算术运算符不能对布尔类型,String*(字符串类型)和 Object*(对象类型) 进行算术运算 B.关系运算中的”= =”和赋值运算符中的”=”是相同的

C.sizeof 运算符用来查询某种数据类型或表达式的值在内存中所占懂得内存空间大小(字 节数)

D.括号在运算符中的优先级中是最高的,它可以改变表达式的运算顺序

94.执行下面的程序后,结果是正确是___ (A)using System; class Test {

Static void Main() {

string s=”Test”;

string t=string .Copy(s); Console.WriteLine(s= =t);

Console.WriteLine((object)s= =t); Console.WriteLine(s= =(object)t);

Console.WriteLine((object)s= =(object)t); } }

A.True False False False B.False False True False C.False False False True D.True True False False

96.下列代码输出正确的是___ (D)namespace Answer {

class Program {

static void Main(string[] args) {

int I,j; for(i=1; i>=0;

i--) for(j=0; j<=I;

j++) Console.WriteLine(“i*j={0}”,i*j); } } }

A.i*j=0 i*j=0 i*j=0 B.i*j=1 i*j=0 i*j=1 C.i*j=1 i*j=1 i*j=0 D.i*j=0 i*j=1 i*j=0

98.下面对 i 值的输出结果说法正确的是_____.(A) namespace Answer {

class Program {

static void Main(string[] args) {

int i do{ i++; } while(i<5)

Console.WriteLine(“i 值的为:{0}”,i) } } } A.i 的值为: 5

B.i 的值为: 6 C.i 的值为: 7 D.i 的值为: 8

100.下列参数类型中___是 C#中不允许使用的(D) A.值参数 B.引用参数 C.输出参数 D.指针参数

101.有两个具有相同名字的函数,当只满足下列选项的____条件时,它们不能算作重载函 数?(D)

A.返回值的类不同 B.参数数目不同 C.参数类型不同 D.参数的顺序不同

102.关于参数数组,下列说法错误的是___.(C) A.参数数组必须是函数的最后一个参数? B.参数数组必须是一维数组

C.参数数组的声明同普通数组一样

D.参数数组所对应的实参的个数是不固定的

103.在下列程序空格处填入正确的选项_____(A),能够实现调用函数 show(). class Class1 {

static void show(ref int i) { i*=15;

Console.WriteLine(“i={0}”,i); }

static void Main(string[] args) {

int test=10;

Console.WriteLine(“调用函数 show前,test={0}”,test); show(______);

Console.WriteLine(“调用函数 show后,test={0}”,test); } } A.test B.out test C.ref test D.params test

104.下面对字段说法正确的是____?( A) (C) A.字段可以用 static修饰符

B.使用字段前必须对它进行初始化 C.字段就是变量

D.字段只能声明为只读的

105.下面代码表示成员重载的是___?(A) A.class Myclass {

public void fun(){ Console.WriteLine(“无参数”);

} public void fun(int a){ Console.WriteLine(“有一个整型的参数”); } }

B.class Myclass {

public int a;

public void fun(){ Console.WriteLine(“无参数”);

} } class Myclass1{ public void fun(int a){ Console.WriteLine(“有一个整型的参数”); } }

C.class Myclass {

public int a;

public void fun(){ Console.WriteLine(“无参数”);

} public void Fun(int a){ Console.WriteLine(“有一个整型的参数”); } }

D.以上都不是

108.下面的修饰符中___不是访问修饰符?(C) A.public B.protected C.new

D.internal

111.下面对抽象类描述不正确的是______?(C) A.抽象类只能作为基类使用 B.抽象类不能定义对象 C.抽象类可以实例对象 D.可以实现多态

112.下面对异常说法不正确的是___(D) A.try/catch块为基本引发异常的组合 B.在捕获异常时,可以有多个 catch块 C.无论异常是否发生,finally块总会执行 D.try块和 finally 不能连用

113.对下面的代码说法正确的是_____ (D)//代码错误,派生类的第一个参数名a修改为d class Baseclass {

protected Baseclass(string a,string b){ Console.WriteLine(“基类中构造函数”); } } class Derivcedlcass:Baseclass{ public Derivcedlcass(string a,string d):base(a,b){ Console.WriteLine(“派生类中的构造函数”); } }

A.代码无错误,派生类中实现了构造函数

B.代码有错误,派生类的 base 关键字中不应带有参数

C.代码无错误,创建派生类对象可以直接执行

D.代码有错误,base关键字中的参数应改为”base(c,d)” 114.下面代码执行结果正确的是______. (C) namespace Answer {

class Baseclass{ public virtual int Show(){ return 5;

} } class Derivcedlcass:Baseclass{ public new int Show(){ return 6;

} } class Derivcedlcass1:Baseclass{ public override int Show(){ return 7; } } class Program {

static void Main(string[] args){ Baseclass[] a=new Baseclass[2]; a[0]=new Derivcedlcass(); a[1]=new Derivcedlcass1();

Console.WriteLine(“a[0]={0}”,a[0].Show()); Console.WriteLine(“a[1]={0}”,a[1].Show()); } } }

A.a[0]=7 a[1]=6 B.a[0]=6 a[1]=5 C.a[0]=5 a[1]=7 D.a[0]=7 a[1]=5

115.下面选项中是在 C#中定义数组的是___(C) A.int a[5]={1,2,3,4,5};

B.double [2][3] aa={{1,2,3},{5,2,1}}; C.string[] a=new string[5];

D.int [][]aa=new int [2][3]{{1,2,3},{5,2,1}};

125.假如有字符串 str1 和字符串 str2,下列选项不能利用于比较这两个字符串是否相等的是 ____(D)

A.string.Compare(str1,str2) B.str1= =str2

C.string.Equals(str1,str2) D.string.CompareTo(str1,str2)

126.下列方法中,不能用于定位字符串中的字符或子字符串的是______(A) A.SubString B.IndexOfAny C.LastIndexOf D.IndexOf

本文来源:https://www.bwwdw.com/article/090v.html

Top