C#习题 下载本文

22. C#中MyClass 为一自定义类,其中有以下方法定义

public void Hello(){..}

使用以下语句创建了该类的对象,并使变量obj 引用该对象:MyClass obj = new MyClass();那么,以下访问类MyClass 的Hello 方法正确的是(A )。 A. obj.Hello(); B. obj::Hello(); C. MyClass.Hello(); D. MyClass::Hello();

23. 在C#应用程序中,一般在程序的开头使用关键字(B )来引入命名空间。

A.class B.using C.in D.this 24. 下列关于构造函数的描述正确的是 ( C )

A. 构造函数可以声明返回类型。 B. 构造函数不可以用private修饰 C. 构造函数必须与类名相同 D. 构造函数不能带参数 25. C#程序的项目和解决方案的关系是( A )。

A. 一个解决方案可包含若干项目 B. 一个项目可包含若干解决方案 C. 两者没有任何关系 D. 以上均不对 26. 在C#中,常数和字段属于(A )。

A.数据成员 B.函数成员 C.嵌套成员 D.控件成员 27. 下面对Read()和ReadLine()方法的描述,正确的是(A)。

A. Read()方法一次只能从输入流中读取一个字符 B. 使用Read()方法读取的字符不包括回车和换行符 C. ReadLine()方法读取的字符不包括回车和换行符

D. 只有当用户按下回车键时,Read()和ReadLIne()方法才会返回 28. 用在方法的定义处,以指明该方法不返回任何值的关键字是(C)

A. static B. string C. void D. public

29. 在.NET中,从属性的读写特性上来进行分类,可以划分为以下三种,除了(D )。

A.只读属性 B.只写属性

C.读写属性 D.不可读不可写的属性

30. 以下关于C#中方法重载的说法正确的是(CD )。(多选)

A.如两个方法名字不同,而参数的数量不同,那么它们可以构成方法重载

B.如两个方法名字相同,而返回值的数据类型不同,那么它们可以构成方法重载 C.如两个方法名字相同,而参数的数据类型不同,那么它们可以构成方法重载 D.如两个方法名字相同,而参数的数量不同,那么它们可以构成方法重载 31. 看代码回答问题

建表如下:create table stuInfo (

stuId int not null,

stuName varchar(30) not null, stuAddress varchar(30), )

看下面C#代码填空,要读取表中的第一列数据(已知sqlCmd为SqlCommand对象,sqlReader为SqlDataReader对象):( D ) While(sqlReader.________ ) {

Console.writeLine(sqlReader._________); }

A.Read() GetInt(0) B.Next() GetValue(0) C.Read() GetValue(1) D.Read() GetValue(0)

32. C#源程序文件的默认扩展名为( C )。

A. cpp B. exe C. cs D. lik

33. 设x是一个bool型的逻辑量,y的值为10,则表达式 x && y的值为( C )。

A. 1 B. 0 C. 与x值相同 D. 与x值相反

34. 在C#程序中,可使用try…catch机制处理程序中出现的( B )错误。

A. 语法 B. 运行 C. 逻辑 D. 拼写 35. 以下的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都是引用类型的变量 36. C#程序的项目文件、解决方案文件的扩展名分别是(A)

A. sln、csproj B. cs、resx C. csproj、sln D. resx、cs 37. 下列选项中,(C)是引用类型。

A. enum类型 B. struct类型 C. string类型 D. int类型 38. C#语言中单行注释符号是(A )。

A.// B./* */ C.&& D.$$ 39. 用(C )修饰符声明的变量称为静态变量。

A.ref B.out C.static D.switch

40. 在ADO.NET中,下列代码运行后的输出结果是(B)

DataTable dt=new DataTable();

dt.Columns.Add (“编号”,typeof(System.Int16)); dt.Columns.Add (“成绩”,typeof(System.Single)); Console.WriteLine(dt.Columns[1].DataType); A.System.Int16; B.System.Single C.编号 D.成绩 41. 在.NET的控件中,Panel、GroupBox、TabControl等分组控件,有时候也被称之为(A )。

A.容器控件 B.组合控件 C.排列控件 D.基类控件

42. 在.NET中,一些数据类型为引用类型,当引用类型的值为(B )时,表明没有引用任

何对象。

A.Empty B.null C.Nothing D.0

43. 在WinForm应用程序中,可以通过以下(C)方法使一个窗体成为MDI窗体。

A.改变窗体的标题信息 B.在工程的选项中设置启动窗体 C.设置窗体的IsMdiContainer属性 D.设置窗体的ImeMode属性

44. C#语言在Console类中提供了两种公共方法向命令提示符窗口输出字符串,其中(D )

在输出数据后,还输出回车符和换行符。

45. A.Read() B.ReadLine() C.Write() D.WriteLine() 46. 下面哪个不是合法的标识符(C )。

47. A.Abc B.abc C.7abc D.L123 48. 以下标识符中不全是C#关键字的是(B)。

A. case for int B. default then while C. bool class long D. goto if char 49. 分析下列程序:

public class class4 {

private string _sData = ““;

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

在Main 函数中,在成功创建该类的对象obj 后,下列哪些语句是合法的?(D ) A. obj.set(obj.sData); B. Console.WriteLine(obj.sData); C. obj._sData = 100; D. obj.sData = “It is funny!”; 50. 下面哪个不是C#语言的跳转语句(D )。

A.break语句 B.goto语句 C.return语句 D.for语句

51. 在C#中设计时,如何将一个可读写的公有属性Name修改为只读属性。(C)

A. 为Name添加修饰符 B. 将Name的set块置空

C. 将Name的set块删除 D. 在Name的set块前添加修饰符private 52. 下面对Read()和ReadLine()方法的描述,正确的是(A)。

A. Read()方法一次只能从输入流中读取一个字符 B. 使用Read()方法读取的字符不包括回车和换行符 C. ReadLine()方法读取的字符不包括回车和换行符

D. 只有当用户按下回车键时,Read()和ReadLIne()方法才会返回 53. 在C#中定义一个数组,正确的代码为( B )。

A.int arraya = new int[5]; B.int[] arraya = new int[5]; C.int arraya = new int[]; D.int[5] arraya = new int; 54. 在.NET的控件中,Panel、GroupBox、TabControl等分组控件,有时候也被称之为(B)。

A.容器控件 B.组合控件 C.排列控件 D.基类控件 55. 关于C#语言的基本语法,下列哪些说法是正确的?( A )

A. C#语言使用using关键字来引用.NET预定义的命名空间 B. C#语言中使用的名称不区分大小写 C. C#中一条语句必须写在一行内 D. C#语言支持保护派生

56. 在.NET中,从属性的读写特性上来进行分类,可以划分为以下三种,除了(D)。

A.只读属性 B.只写属性

C.读写属性 D.不可读不可写的属性 57. 在Visual Studio.NET 窗口中,在(A)窗口显示了当前Visual Studio解决方案的树

型结构。

A. 解决方案资源管理器 B.类视图 C. 资源视图 D. 属性

58. C#语言在Console类中提供了两种公共方法向命令提示符窗口输出字符串,其中(D )

在输出数据后,还输出回车符和换行符。

59. A.Read() B.ReadLine() C.Write() D.WriteLine()

60. 9.下面哪个不是合法的标识符(C )。 61. A.Abc B.abc C.7abc D.L123 62. 程序运行过程中发生的错误,叫作(C).

A.版本 B.断点 C.异常 D.属性

63. 在.NET的WinForms程序中,可以使用(C )对象来连接和访问数据库。

A.MDI B.JIT C.ADO.NET D.System.ADO 64. 在C#中,下列代码运行后,变量Max的值是( C )

Int a=5,b=10,c=15,Max=0; Max = a>b?a:b;

Max = c

A.0 B.5 C.10 D.15

65. 在ADO.NET中用以填充DataSet的对象是(A )。

A.SqlDataAdapter B.SqlConnection C.SqlCommand D.SqlParameter 66. 异常处理使用(B )关键字来捕捉可能引发异常的程序。

A.click B.catch C.try D.show 67. 下面哪个类是用来以字节格式读写文件(A )。

A.FileStream类 B.StreamReader类 C.BinaryWriter类 D.BinaryReader类 68. 在ADO.NET中,对于Command对象的ExecuteNonQuery()方法和ExecuteReader()方法,

下面叙述错误的是(C)

A. insert、update、delete等操作的Sql语句主要用ExecuteNonQuery()方法来执行 B. ExecuteNonQuery()方法返回执行Sql语句所影响的行数 C. Select操作的Sql语句只能由ExecuteReader()方法来执行 D. ExecuteReader()方法返回一个DataReder对象; 69. 下面运算符不可以被重载的是。(D)

A. * B. >= C. True D. &&

70. 下面对Read()和ReadLine()方法的描述,正确的是(A)。

A. Read()方法一次只能从输入流中读取一个字符 B. 使用Read()方法读取的字符不包括回车和换行符 C. ReadLine()方法读取的字符不包括回车和换行符

D. 只有当用户按下回车键时,Read()和ReadLIne()方法才会返回 71. 下面有关构造函数的说法中,不正确的是(B )

A. 构造函数种,不可以包含return语句 B. 一个类只能有一个构造函数

C. 实例构造函数在生成实例时被自动调用 D. 用户可以定义无参数构造函数

72. 如果要在窗体中始终显示系统的当前时间,应该使用的控件是(D)。

A. CheckBox B. Panel C. RadioButton D. Timer 73. 下面的指令用来计算学生成绩:(1)获得要加的分数;(2)求分数的和;(3)打印总成绩;

(4)减去要扣的分数。正确步骤的顺序应该是(B)。

A.1-2-3-4 B.1-2-4-3 C.1-3-2-3 D.4-3-2-1 74. 在.NET中,以下关于命名空间的描述,正确的是(D )。

A.命名空间不可以进行嵌套

B.任一个.cs文件中,只能存在一个命名空间

C.便用private修饰的命名空间,其内部的类也不允许访问 D.命名空间使得代码更加有条理、结构更清晰