C#习题

更新时间:2023-12-16 12:50:01 阅读量: 教育文库 文档下载

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

一、填空题(每空2分,共20分)

1. C#的数据类型从数据存储的角度讲,则可分为_ 数值类型 __、_ 引用类型__和指针

类型。

2. 在数据类型中,浮点型包括单精度和_双精度 __两种。

3. 如果不带修饰符,C#中类成员被默认声明为 public 类型 。 4. main函数 可以看作程序的入口,程序的控制从这个方法开始。 5. C#中的三元运算符是__条件运算符(:?) ___。 6. 在C#中,使用 const 关键字声明符号常量。

7. 调用DataAdapter对象的 Fill方法 方法填充数据集。 8. C#中有两个逻辑常量:分别是 True 和 False 。

9. 声明类之后,通过new创建 类的实例 ,它是一个引用类型的变量。 10. c#中的三元运算符是_ 条件运算符(:?) _____。

11. 当整数a赋值给一个object对象时,整数a将会被 新分配一个内存单元 。 12. C#有两种类型的常量:_成员常量 __和只读常量。

13. 菜单一般可分为_主菜单 __和上下文菜单(又称快捷菜单)两种。

14. 在C#中,根据打开的多个窗体之间是否存在相互制约关系,可将窗体的显示模式分为_

_Form.Show()_窗体和_Form.ShowDialog() __窗体。

15. 在if语句中,每个else关键字与它前面同层次并且最接近的 if 关键字相配

套。

16. main函数 可以看作程序的入口,程序的控制从这个方法开始。

17. 元素类型为double的4行6列的二维数组共占用 192 字节的存储空间。

18. 当整数a赋值给一个object对象时,整数a将会被 新分配一个内存单元 。 19. C#中有两个逻辑常量:分别是 True 和 False 。

20. C#的数据类型从数据存储的角度讲,则可分为数值类型 _、 引用类型_类型。 21. 在数据类型中,浮点型包括单精度和双精度 两种。 22. 窗体控件默认的事件是 。

23. 可以将数据源中的数据与控件的属性关联起来,这称为 。

24. 若do循环的“尾”为“while(++i<10)”,并且i的初值为0,同时在循环体中不会修

改i的值,则循环体将被重复执行 10次后正常结束。

25. 在C#中,装箱操作是将值类型转化成 引用类型 。 26. using namespace 的作用是表示 引用命名空间 。

27. ADO.NET使用 System.Data.SqlClient 命名空间的类访问SQL Server数据库

中的数据。

28. 为打开文件“C:\\Winnt\\Win.txt”进行读写操作,首先应该创建 File Info 类的

实例。

29. 在C#中,根据打开的多个窗体之间是否存在相互制约关系,可将窗体的显示模式分为

(_Form.Show() 窗体和Form.ShowDialog() )窗体。

30. 在if语句中,每个else关键字与它前面同层次并且最接近的 if 关键字相配

套。

31. 当在程序中执行到continue语句时,将结束本层循环类语句或switch语句的执行。 32. ADO.NET使用 System.Data.SqlClient 命名空间的类访问SQL Server数据库

中的数据。

33. 窗体控件默认的事件是 。

34. 运算符按操作数的个数可分为一元运算符、二元运算符 和三元运算符。 35. 添加到窗体的每个组件,如Button、TextBox等,都称为 控件 。

36. 若要在同一窗体中安排两组单选按钮,可用 combox 控件予以分隔。

37. 在switch语句中,每个语句标号所含关键字case后面的表达式可以是整型、 字

符型 。

38. 定义结构体的关键字是 struck 。

39. 面向对象的语言具有_封装_性、_ 继承_性、__多态_性。

40. 为打开文件“C:\\Winnt\\Win.txt”进行读写操作,首先应该创建 File Info 类

的实例。

41. 在ADO.NET中,用来与数据源建立连接的对象是 Connection对象 。 42. 按钮控件默认的事件是 。

43. 循环语句“for (int i=20; i>=9; i=i-3)”的循环次数为_ 4 ___。 44. 用来存储和显示图像的控件是 Image控件 。

45. 若要在同一窗体中安排两组单选按钮,可用 combox 控件予以分隔。

46. 当在程序中执行到 continue 语句时,将结束所在循环语句中循环体的一次执

行。

47. C语言是一种面向 过程 的语言,而C#是面向 对象 的语言。 48. 在ADO.NET中,用来与数据源建立连接的对象是 Connection对象 。 49. 如果类不含任何实例构造函数,系统会自动为其提供一个默认的 参实例的构造

函数。

50. C#语言规定变量在使用前必须先 定义变量类型 。

51. 菜单一般可分为 主菜单 和上下文菜单(又称快捷菜单)两种。

52. 元素类型为double的4行6列的二维数组共占用 192 字节的存储空间。 53. 按钮控件默认的事件是 。

54. 用来存储和显示图像的控件是 Image控件 。

55. Connection对象负责建立与数据库的连接,它使用 方法建立连接。

56. 添加到窗体的每个组件,如Button、TextBox等,都称为 控件 。 57. 在C#中,将文本框TextBox1清空,可用语句表示为 textBox1.Text = \。 58. 用鼠标右击一个控件时出现的菜单一般称为 菜单。

59. 元素类型为int的10个元素的数组共占用 字节的存储空间。 60. C#编写程序时,程序的入口是 main 函数。 61. 定义枚举的关键字是 enum 。

62. 面向对象的语言具有___ 性、封装性、___ 性。

63. 在C#中,将文本框TextBox1清空,可用语句表示为 textBox1.Text =

\。

64. 已知:double x=4.3%1.7; 则x的值是___ 。

65. C#中用关键字 class 创建类,使用关键字 new 创建类的对象并调用构造

函数。

66. 在数据类型中,浮点型包括单精度和_双精度__ 两种。

67. C#的数据类型从数据存储的角度讲,则可分为__数值类型 __、_ 引用类型__. 68. _ 、___ 。

69. C#有两种类型的常量: 成员常量 和只读常量。

70. 在C#标准控件中,有文本框和列表框组合在一起形成的控件称为 。

二、 单项选择题(每题2分,共30分)

1. C#语言取消了( B )语法。

A. 循环 B.指针 C. 判断 D. 数组 2. 以下类MyClass的属性count属于( A )属性。

class MyClass { int i;

int count {get {return i;}} }

A. 只读 B. 只写 C. 可读写 D. 不可读不可写 3. (A )语句只能在循环语句的循环体语句序列中使用。

A.break B.goto C.return D.continue

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

A.class B.using C.in D.this

5. 异常处理使用时,一般将可能出现异常的语句放在( B )代码块中。

A.click B.catch C.try D.show

6. WinForms程序中,如果复选框控件的 Checked属性值设置为 True,表示( A )。

A.该复选框被选中 B.该复选框不被选中

C.不显示该复选框的文本信息 D.显示该复选框的文本信息 7. 在ADO.NET中,SqlConnection 类所在的命名空间是( D )。

A.System B.System.Data

C.System.Data.OleDb D.System.Data.SqlClient 8. 下面哪个类是用来以字节格式读写文件(A )。

A.FileStream类 B.StreamReader类 C.BinaryWriter类 D.BinaryReader类 9. C#程序从上机到得到结果的几个操作步骤依次是( A )。

A. 输入、编辑、运行 B. 编译、连接、运行 C. 输入、运行、编辑 D. 编辑、编译、连接 10. 下面的转换中不是隐式转换的是(A )

A. int转换成short B. short转换成long C. char转换成int D. bytes转换成float

11. 诸如文本框,组合框,复选框,单选按钮等是从( D )添加到窗体。

A. 帮助菜单 B. 菜单栏 C. 工具栏 D. 工具箱 12. 针对下面的C#代码, 则程序输出为( )

namespace HelloWorld {

class Program {

Static void Main(string[] args) {

string str = “Hello World”;

Console.WriteLine(str.YoUpper() ); Console.ReadLine();

}

} }

A. Hello World B. HELLO WORLD C. STR D. hello world

13. 在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; 14. 在.NET的控件中,Panel、GroupBox、TabControl等分组控件,有时候也被称之为( A )。

A.容器控件 B.组合控件 C.排列控件 D.基类控件 10. 如果要在窗体中始终显示系统的当前时间,应该使用的控件是( D )。

A. CheckBox B. Panel C. RadioButton D. Timer 11. 在ADO.NET中用以填充DataSet的对象是(A )。

A.SqlDataAdapter B.SqlConnection C.SqlCommand D.SqlParameter 12. 在类的定义中,类的( B )描述了该类的对象的行为特征。

A. 类名 B. 方法 C. 所属的名字空间 D. 私有域

13. OpenFileDialog对话框的哪个属性用于表示对话框显示的初始目录(C )。

A.Title B.Filter C.InitialDirectory D.FileName 14. 在C#中,表示一个字符串变量应使用以下哪条语句定义(B)

A. Cstring str; B. string str; C. Dim str as string D. char *str; 15. C#的数据类型有( B)

A. 值类型和调用类型 B. 值类型和引用类型 C. 引用类型和关系类型 D. 关系类型和调用类型; 16. 下面对C#中类的构造函数描述正确的是( D)。

A. 与方法不同的是,构造函数只有void这一种返回类型 B. 构造函数如同方法一样,需要人为调用才能执行其功能 C. 构造函数一般被声明称private型

D. 在类中可以重载构造函数,C#会根据参数匹配原则来选择执行合适的构造函数 17. 类是使用关键字( B)定义的。

A.struct B.class C.enum D.string 18. 在C#中,可以通过装箱和拆箱实现值类型与引用类型之间相互转换,在下列代码中,

有(B )处实现了拆箱。 int age = 5; object o= age; o=10;

age=(int)o;

object oAge =age;

A.0 B.1 C.2 D.3

19. 在C#中,(C )访问修饰符修饰的变量只能由当前程序集访问。

A.public B.protected C.internal D.private

20. 在ADO.NET中,下列属于SqlDataAdapter对象的属性的是( D )

A.SelectCommand B.DeleteCommand C.InsertCommand D.以上全是

21. C#中,新建一字符串变量str,并将字符串”Tom's Living Room”保存到串中,则应

该使用下列哪条语句?( A )

A. string str = “Tom\\'s Living Room”; B. string str = “Tom's Living Room”; C. string str(“Tom's Living Room”); D. string str(“Tom”s Living Room”);

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.命名空间使得代码更加有条理、结构更清晰

75. 下面哪个类是用来以字节格式读写文件(A )。

A.FileStream类 B.StreamReader类 C.BinaryWriter类 D.BinaryReader类 76. 在.NET中实现网络流操作的NetworkStream类所在的命名空间是(C)。

A.System.Threading B.System.IO C.System.Net D.System.Windows.Forms 77. 在WinForms中,为了防止用户无意关闭窗体,需要在(A )事件中编写代码,提示用

户是否关闭窗体。

A.Closing B.Closed C.Load D.VisibleChanged

78. 在DataSet 中,若修改某一DataRow 对象的任何一列的值,该行的DataRowState 属

性的值将变为(D )。

A. DataRowState.Added B. DataRowState.Deleted C. DataRowState.Detached D. DataRowState.Modified 79. 以下是一些C#中的枚举型的定义,其中错误的用法有(A)

A. public enum var1{ Mike = 100, Nike = 102, Jike } B. public enum var1{ Mike = 100, Nike, Jike } C. public enum var1{ Mike=-1 , Nike, Jike } D. public enum var1{ Mike , Nike , Jike } 80. 下面哪个方法是启动线程(A )。

A.Start() B.Abort() C.Sleep() D.Suspend() 81. 下面哪个不能用来实现多线程的互斥(D )。

A.lock关键字 B.Monitor类 C.Mutex类 D.Process类 82. 在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; 83. 如果要在窗体中始终显示系统的当前时间,应该使用的控件是(D)。

A. CheckBox B. Panel C. RadioButton D. Timer

84. 在.NET Framework类库中,功能相似的类库被包含在同一个(B)中。

A.CLR B.命名空间 C.文件 D.项目 85. 下面哪个不是合法的标识符(C )。

A.Abc B.abc C.7abc D.L123

86. 在WinForms中,为了防止用户无意关闭窗体,需要在( A )事件中编写代码,提示

用户是否关闭窗体。

A.Closing B.Closed C.Load D.VisibleChanged 87. 设”int a=12;”,则执行完语句”a+=a*a;”后,a的值是(c )。

A. 12 B. 144 C. 156 D. 288 88. (A)是.NET平台最重要的核心技术。

89. A..NET Framework B.SQL Server C.MSDN D.ADO 90. 以下的C#代码:

static void Main(string[] args) {

Console.WriteLine(\运行结果: {0}\ Console.ReadLine(); }

代码运行结果为(D)。

A.在控制台窗口显示“运行结果:” B.在控制台窗口显示“运行结果:{0}”

C.在控制台窗口显示“运行结果:,Console.ReadLine”

D.如果用户在控制台输入“ A”,那么程序将在控制台显示“运行结果:A” 91. 在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;

92. 通过把窗体的(A)属性设置为True,可以使得一个窗体成为MDI主窗体

A. IsMdiContainer B. MdiParent C. MdiChildren D. IsMdiParent

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

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

A.Read() B.ReadLine() C.Write() D.WriteLine() 94. 下面哪个不是合法的标识符(C )。 A.Abc B.abc C.7abc D.L123

95. Winform中,关于ToolBar控件的属性和事件的描述不正确的是( D )

A. Buttons属性表示ToolBar控件的所有工具栏按钮

B. ButtonSize属性表示ToolBar控件上的工具栏按钮的大小,如高度和宽度 C. DropDownArrows属性表明工具栏按钮(该按钮有一列值需要下拉方式显示)旁边是否显示下箭头键

D. ButtonClick事件在用户单击工具栏任何地方时都会触发 96. 在C#中,(C)控件是最常用、最简单的文本显示和输入控件,它既可以输出或显示文

本信息,也可以接收键盘输入的内容。

A.单选按钮 B.复选框 C.文本框 D.图片框

97. OpenFileDialog对话框的哪个属性用于表示对话框显示的初始目录(C)。 A.Title B.Filter C.InitialDirectory D.FileName 98. 在ADO.NET中,用来与数据源建立连接的对象是(A)。

A.Connection对象 B.Command对象 C.DataAdapter对象 D.DataSet对象 99. 下面对Read()和ReadLine()方法的描述,正确的是( A )。

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

D. 只有当用户按下回车键时,Read()和ReadLIne()方法才会返回 100. 变量openFileDialog1引用一个OpenFileDialog对象,为检查用户在退出对话框

时是否点击了“打开”按钮,应检查openFileDialog1.ShowDialog()的返回值是否等于( A )。

A. DialogResult.OK B. DialogResult.Yes C. DialogResult.No D. DialogResult.Cancel 101. 若想从派生类中访问基类的成员,可以使用( C)。

A.this关键字 B.me关键字 C.base关键字 D.override关键字 102. 在类的外部可以被访问的成员是( A )

A. public成员 B. private成员

C. protected成员 D. protected internal成员 103. 在C#中,(C )控件是最常用、最简单的文本显示和输入控件,它既可以输出或显

示文本信息,也可以接收键盘输入的内容。

A.单选按钮 B.复选框 C.文本框 D.图片框

104. C#可以采用下列哪些技术来实现对对象内部数据的隐藏?( B )

A. 静态成员 B. 类成员的访问控制说明

C. 引用 D. 装箱(boxing)和拆箱(Unboxing)技术 105. 下面哪个类是用来以字节格式读写文件(A )。

A.FileStream类 B.StreamReader类 C.BinaryWriter类 D.BinaryReader类 106. 以下是一些C#中的枚举型的定义,其中错误的用法有( C )

A. public enum var1{ Mike = 100, Nike = 102, Jike } B. public enum var1{ Mike = 100, Nike, Jike } C. public enum var1{ Mike=-1 , Nike, Jike } D. public enum var1{ Mike , Nike , Jike } 107. C#程序的项目和解决方案的关系是( A )。

A. 一个解决方案可包含若干项目 B. 一个项目可包含若干解决方案 C. 两者没有任何关系 D. 以上均不对 108. 对于一个类的构造函数,其函数名与类名( A )。

A. 完全相同 B. 基本相同,允许不同 C. 不相同 D. 无关系 109. 在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; 110. 下面哪个方法是启动线程( A)。

A.Start() B.Abort() C.Sleep() D.Suspend() 111. 有一个函数:

Void fun (int a) {…}

正确调用该函数的语句是( )。

A. int x=100; fun(x); B. fun(30吨) C. int x=100; fun(ref x); D. fun(“100”) 112. 采用重载函数的目的是( D )

A.实现共享 B. 减少空间C. 提高速度D. 使用方便,提高可读性 113. 在C#应用程序中,一般在程序的开头使用关键字(B)来引入命名空间。 A.class B.using C.in D.this 114. 在.NET的控件中,Panel、GroupBox、TabControl等分组控件,有时候也被称之

为( A )。

A.容器控件 B.组合控件 C.排列控件 D.基类控件 115. 在C#中,下列常量定义正确的是( B )。

A. const double PI 3.1415926; B. const double e=2.7 C. define double PI 3.1415926 D. define double e=2.7 116. 如果要在窗体中始终显示系统的当前时间,应该使用的控件是( D )。

A. CheckBox B. Panel C. RadioButton D. Timer 117. Visual Stdio建立的解决方案文件的后缀是( C)。

A..doc B..xls C..sln D..vb 118. 在数据库中视图的筛选用哪个关键字( )

A. Update B. Sort C. Filter D. Text 119. 在C#中,下列常量定义正确的是( B )。

A.const double PI 3.1415926; B.const double e=2.7 C.define double PI 3.1415926 D.define double e=2.7

120. 可用作C#程序用户标识符的一组标识符是( )。

A. void define +WORD B. a3_b3 _123 YN C. for -abc Case D. 2a DO sizeof 121. 以下的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都是引用类型的变量 122. 在C#语言中,下列关于属性的描述正确的是( )。

A.属性系是以public关键字修饰的字段,以public关键字修饰的字段也可称为属性 B.属性是访问字段值的一种灵活机制,属性更好地实现了数据的封装和隐藏 C.要定义只读属性只需在属性名前加上readonly关键字 D.在C#的类中不能自定义属性 123. NET中,程序中的错误可以划分为以下三类,除了( D )

A.逻辑错误 B.运行时错误 C.语法错误 D.自定义错误 124. 在.NET中,文本框控件的( A )属性用来设置其是否是只读的。

A.ReadOnly B.Locked C.Lock D.Style 125. OpenFileDialog对话框的哪个属性用于表示对话框显示的初始目录(C )。

A.Title B.Filter C.InitialDirectory D.FileName 126. 下列的关键字中,可用于引用类的当前实例的是(B )。 A.base B.this C.new D.override 127. 一个C#程序的程序入口点是( C )。

A. main B. MAIN C. Main D. 任意标识符 128. 下面哪个类是用来以字节格式读写文件(A )。

A.FileStream类 B.StreamReader类 C.BinaryWriter类 D.BinaryReader类 129. 用于防止从所修饰的类派生出其他类,可以将此类定义为( B)。

A.抽象类 B.密封类 C.静态类 D.分部类 130. 下面对Read()和ReadLine()方法的描述,正确的是( A )。

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

D. 只有当用户按下回车键时,Read()和ReadLIne()方法才会返回 131. 变量openFileDialog1引用一个OpenFileDialog对象,为检查用户在退出对话框

时是否点击了“打开”按钮,应检查openFileDialog1.ShowDialog()的返回值是否等

于( A )。

A. DialogResult.OK B. DialogResult.Yes C. DialogResult.No D. DialogResult.Cancel 132. C#中,新建一字符串变量str,并将字符串”Tom's Living Room”保存到串中,

则应该使用下列哪条语句?( )

A. string str = “Tom\\'s Living Room”; B. string str = “Tom's Living Room”;

C. string str(“Tom's Living Room”); D. string str(“Tom”s Living Room”); 133. 关于catch代码块说法正确的是( C)

A. 包含有可能引发异常的语句块。 B. 声明有可能会引发的异常类型 C. 异常处理程序位于catch代码块中 D. 一般不与try配合使用,而是单独使用 134. C#语言在Console类中提供了两种公共方法向命令提示符窗口输出字符串,其中

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

A.Read() B.ReadLine() C.Write() D.WriteLine() 135. ( A )方法执行指定为Command对象的命令文本的SQL语句,并返回受SQL语

句影响或检索的行数。

A.ExecuteNonQuery B.ExecuteReader C.ExecuteQuery D.ExecuteScalar 136. 下列哪些语句中定义的变量属于引用类型变量?( A )

A. IInformation info; // IInformation 为一接口类型名 B. MyStruct x; //MyStruct 为一结构类型名 C. int arr;

D. MyEnum y; //MyEnum 为已定义的枚举类型名 137. 下面哪个不属于值类型( D)。

A.整型 B.结构类型 C.枚举类型 D.字符串类型 138. 在ADO.NET中,下列属于SqlDataAdapter对象的属性的是( D )

A.SelectCommand B.DeleteCommand C.InsertCommand D.以上全是 139. 在方法中执行下列代码后,字符串firstName的值是( A )。

string firstName=”Tom”; string secondName=firstName; seconName+=”Jerry”;

A. Tom B. Jerry C. TomJerry D. Tom+Jerry 140. 语句timer1.Enabled=true;中,timer1,Enabled和true分别代表( A )。

A. 对象、属性、值 B. 对象、方法、值 C. 属性、对象、值 D. 值、方法、对象 141. 在ADO.NET中,用户可以使用( C )对象建立应用程序与数据库连接。

A. DataSet B. DataReader C. Connection D. Command 142. 变量openFileDialog1引用一个OpenFileDialog对象,为检查用户在退出对话框

时是否点击了“打开”按钮,应检查openFileDialog1.ShowDialog()的返回值是否等于( A )。

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

三、填写程序运行结果(每题5分,共10分) 1. 写出以下程序运行结果

static void Main(string[] args) {

int i = 2000; object o = i; i = 2001;

int j = (int)o;

Console.WriteLine(\}i=2001,o=2000,j=2000. 2. 写出以下程序运行结果

using System; class Program {

public static void Main (string[] args) {

int[] a ={2,4,6,8,10,12,14,16,18}; for (int i=0; i<9; i++) {

Console.Write(\

if ((i+1)%3==0) Console.WriteLine(); } } }2

3. 写出以下程序运行结果

class Program {

static void Main( string[] args) {

string s1 = \ string s2 = s1;

string s3 = s1 + \ Console.WriteLine(s1); Console.WriteLine(s2);

Console.WriteLine(s3);

Console.WriteLine(\与s2的比较结果为:{0}\s2));

Console.WriteLine(\与s3的比较结果为:{0}\s3));

Console.WriteLine(\中首次出现is的位置是:{0}\//序号从0开始

} }

4. 在C#中,某程序在一个类中编写了两个同名的方法,代码如下,请问该代码的运行结

果是()。

this is a string this is a string this is a string:hello world s1与s2的比较结果为:0 s1与s3的比较结果为:-1 s1中首次出现is的位置是:2

public class Musician{ public void Song() {

Console.WriteLine(“放了你我做不到”); }

public void Song(string musicName){ Console.WriteLine(musicName); }

Static void Main(){

Musician musician=new Musician(); musician.Song();

musician.Song(\主要是现在猪肉还是挺贵的啊?\} }

错误 1 类、结构或接口成员声明中的标记“void”无效 C:\\Users\\Administrator\\Desktop\\ConsoleApplication1\\ConsoleApplication1\\Program.cs 18 8 ConsoleApplication1 错误 2 未能找到类型或命名空间名称“Static”(是否缺少 using 指令或程序集引用?) C:\\Users\\Administrator\\Desktop\\ConsoleApplication1\\ConsoleApplication1\\Program.cs 18 1 ConsoleApplication1 5. 写出以下程序运行结果

using System; class Demo2 {

static void Main() {

int k=1,m; while (k<=10) { m=k*k;

Console.Write(“{0}\\t”,m); k++; } } }1

6. 写出以下程序运行结果

static void Main(string[] args) {

int i = 2000; object o = i; i = 2001;

int j = (int)o;

Console.WriteLine(\}i=2001,o=2000,j=2000. 7. 写出以下程序运行结果

public class Test {

private string name=\ public string Name {

get{ return name; } set{

if(value.Length>3) {

Name=value; } } }

static void Main(){ Test ts=new Test(); ts.name=\ ts.Name=\

Console.WriteLine(ts.Name); }bill

8. using System;

class Demo2 {

static void Main() {

int k=1,m; while (k<=10) { m=k*k;

Console.Write(“{0}\\t”,m); k++; } } }1

9. 写出以下程序运行结果

static void Main(string[] args) {

int[] arr1 = new int[5]; arr1[0] = 1; arr1[2] = 3; arr1[4] = 5;

for (int i = 0; i < arr1.Length; i++) {

Console.Write(\ }

Console.WriteLine(); }1,0,3,0,5

10. 写出以下程序运行结果

static void Main(string[] args) {

int a = 12, b = 5;

string s1 = \ char c = 'e';

Console.WriteLine(\

Console.WriteLine(\ Console.WriteLine(\ Console.WriteLine(\ }

a+b=17 s1+s2=HelloWorld a+s1=12Hello \11. 写出以下程序运行结果 class Program {

static void Main(string[] args) {

object[] objArray = new object[4]; objArray[0] = \ objArray[1] = 123; objArray[2] = 123.4; objArray[3] = null;

for (int i = 0; i < objArray.Length; ++i) {

string s = objArray[i] as string; Console.Write(\ if (s != null) {

Console.WriteLine(\ }0:’hello’1: 2: 3; 12. 写出以下程序运行结果 using System; class A { int x;

public A(int i) { x=i; } public int F()

{ if (x>0) return x--; else return 0; } }

class Test { static void Main() { A a=new A(9); int j=a.F(); while (j>0)

{ Console.Write(“{0}\\t”, j*j);

j.a.F(); } } }无法运行 错误 1 “int”不包含“a”的定义,并且找不到可接受类型为“int”的第一个参数的扩展方法“a”(是否缺少 using 指令或程序集引用?) C:\\Users\\Administrator\\Desktop\\ConsoleApplication1\\ConsoleApplication1\\Program.cs 28 19 ConsoleApplication1 13. 写出以下程序运行结果 class Test {

public static void Main () { int i,j; } }

for(i=0; i<3; i++) {

for(j=0; j<=i; j++) Console.Write(\ Console.WriteLine();

}

* 14. 写出以下程序运行结果 static void Main(string[] args) {

int a = 5, b = 12, c; c = a++;

Console.WriteLine(\ c = ++a;

Console.WriteLine(\ c = b--;

Console.WriteLine(\ c = --b;

Console.WriteLine(\ }

c=5,a=6 c=7,a=7 c=12,b=11 c=10,b=10 四、编程题(第题10分,共40分)

1. 一个窗体中,在文本框TextBox1中输入一个整数,单击Button1按钮,在文本框

TextBox2中显示该数的阶乘值。

2. 输入一个华氏温度,要求输出摄氏温度,公式为C=(F-32),结果保留两位小数。

static void Main(string[] args) { Console.WriteLine(\请输入华氏温度:\ double f = double.Parse(Console.ReadLine()); double c = f - 32; Console.WriteLine(\对应摄氏温度为:\ Console.ReadLine(); } 3. 创建一个person类,含有实例变量学号、姓名、性别、籍贯。创建实例方法DisplayAll(),

显示该学生的学号、姓名、性别、籍贯。在主函数中调用实例化person类,并调用实例方法。

4. 求1!+2!+3!+…+n!,n的值由用户输入。

public int fn(int n) { int sum = 0, m = 1; for (int i = 1; i <= n; i++) { m = m * i; sum += m; } return sum; }

5. 窗体中分别有一个标签和三个单选按钮,标签名为lblText,其Text属性为“不同的

字体”,三个RadioButton控件用来修改标签中文本的字体:宋体、黑体、楷体。选择不同的字体,标签中的字体发生相应改变,请简要说明整个程序建立步骤及核心代码。

6. 定义一个Student类,有学号、姓名和上课情况等私有字段,请定义构造函数初始化

私有成员,添加相应属性完成对私有字段进行读写操作;定义一个Student类的派生类Graduate,它继承Student类,有“导师姓名”字段,请定义构造函数初始化私有成员,添加相应属性完成对私有字段进行读写操作;在Main()方法中,调用基类和派生类的属性和方法。

7. 打印出2至1000之间的所有素数。

class Program { static void Main(string[] args) { int count=0; for (int i = 2; i < 1000; i++) { if (isRight(i) == true) { Console.Write(i + \count++; } if (count % 10 == 0) Console.WriteLine(); } Console.WriteLine(); Console.ReadLine(); } public static bool isRight(int num) { for (int i = 2; i <= num / 2; i++) { if (num % i == 0) { return false; } } return true; } } 8. 在基类Car中声明一个virtual类型的函数ShowDetails( ),在继承类ConvertibleCar

中使用override关键字重写基类中的ShowDetails( )方法。 9. 编写程序输出100-200能够被6整除的数字。

static void Main(string[] args) { int i; for(i=100;i<=200;i++) if(i%6=0) Console.WriteLine(被6整除的数是“【0】”,i); } 10. 定义一个哺乳动物Mammal类作为基类,声明一个virtual类型的函数Speak();在继

承类Dog类中使用override关键字重写基类中的Speak()。在主函数中,定义一个Dog类的对象,调用Speak( )函数。

11. 创建一个shape类,该类包含X, Y, Height, Width变量,含有一个Show( )方法;创

建继承自shape类的Circle类和Rectangle类,重写Show( )方法,可以在屏幕上分别显示“这是Circle类的圆形”,“这是Rectangle类的矩形”;

12. 程序运行时向列表框(List1)添加四个项目:Visual Basic 、Turbo C、C++、Java,

请编写适当的程序完成以下功能:当选择列表框中的一项和单击按钮OP1,然后单击“确定”命令按钮,则在文本框中显示“xxxx笔试”;当选择列表框中的一项和单击

按钮OP2,然后的单击“确定命令”按钮,则在文本框中显示 “xxxx上机”,如图所示。其中“xxxx”是在列表框中选择的项目,如果没有选择考试科目和项目,要给出信息提示。请写出创建步骤及相关代码。(提示:获取列表框选中项的文本的属性是SelectedText)

13. 从键盘输入10 个同学的成绩,统计80分以上和不及格的人数,并输出平均值。 14. 编写一个矩形类Rectangle,私有数据成员为矩形的长(len)和宽(wid),无参构造函

数将len和wid设置为0,一个有参构造函数设置长和宽的值。另外,类还包含求周长的公共方法Perimeter和求面积的公共方法Square,修改矩形的长和宽的公共方法ModifyLenAndWid。

15. 声明一个形状Shape抽象类,有求面积和周长两个方法;在此基础上派生出圆形类,圆

形类有半径、面积、周长等3个私有字段和3相应公有属性,有getarea( )方法计算圆形面积,getperim( )方法计算圆形周长。 16.

按钮OP2,然后的单击“确定命令”按钮,则在文本框中显示 “xxxx上机”,如图所示。其中“xxxx”是在列表框中选择的项目,如果没有选择考试科目和项目,要给出信息提示。请写出创建步骤及相关代码。(提示:获取列表框选中项的文本的属性是SelectedText)

13. 从键盘输入10 个同学的成绩,统计80分以上和不及格的人数,并输出平均值。 14. 编写一个矩形类Rectangle,私有数据成员为矩形的长(len)和宽(wid),无参构造函

数将len和wid设置为0,一个有参构造函数设置长和宽的值。另外,类还包含求周长的公共方法Perimeter和求面积的公共方法Square,修改矩形的长和宽的公共方法ModifyLenAndWid。

15. 声明一个形状Shape抽象类,有求面积和周长两个方法;在此基础上派生出圆形类,圆

形类有半径、面积、周长等3个私有字段和3相应公有属性,有getarea( )方法计算圆形面积,getperim( )方法计算圆形周长。 16.

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

Top