
,NET箭程基础练习愿一3 中央电大工学院袁带 一,填空题(每空2分,共24分) I.my Table Row02)返国yTle的第 行第 列数 据。 2算承就是重用其他类中的方法、属性、事件、字段和常量来创建新类。可以创建 一个具有某些基本功能的类,称之为“基类:然后作为基础去创建其他更为具体的类,称 之为 ,可以从基类中获得相同的通用功整。 3.在语句Class Employee:Inheri心Person中,基类的名称是 派生类 的名称是 4.通过 的RowFib属性和San属性可以分别实现数据过滤和数据排 序功能。 5.使用数据话配题的 方法能够更新数据源 6.封装、腿承、接口和多态性是面向对象开发的精华。其中 把数据和 方法隐藏在一个公共结构中,使得软件更健牡、易于调式、易于修改并易于长期维护。 7.使用StreamReader类的 方法可以判斯文作指针是否到了术尾。 8 在创建DataTable的列时,使用Column的Expression属性创建的是DataTable的 9. myDataS.Tables Addi)语句执行后my DataSet中增加的表的名称是 I0.语句Class Employee Inherits Person中派生类是 二,透择题(选择一个正确答案的代码填入括号中,每空2分,共0分) I、以下语句执行后,myDataSet中增如的表的名移是(). dim my DataSet as new DataSet() myDataSet.Tables Add() A.Tablel B.Table2 C.TableN D.Nothing 1
1 .NET 编程基础练习题-3 中央电大工学院 袁薇 一、填空题(每空 2 分,共 24 分) 1. myTable.Rows(0)(2) 返回 myTable 的第_____________行第_____________列数 据。 2. 继承就是重用其他类中的方法、属性、事件、字段和常量来创建新类。可以创建 一个具有某些基本功能的类,称之为“基类”;然后作为基础去创建其他更为具体的类,称 之为_____________,可以从基类中获得相同的通用功能。 3. 在语句 Class Employee:Inherits Person 中,基类的名称是_____________,派生类 的名称是_____________。 4. 通过_____________的 RowFilter 属性和 Sort 属性可以分别实现数据过滤和数据排 序功能。 5. 使用数据适配器的_____________方法能够更新数据源。 6. 封装、继承、接口和多态性是面向对象开发的精华。其中_____________把数据和 方法隐藏在一个公共结构中,使得软件更健壮、易于调式、易于修改并易于长期维护。 7. 使用 StreamReader 类的_____________方法可以判断文件指针是否到了末尾。 8. 在创建 DataTable 的列时,使用 Column 的 Expression 属性创建的是 DataTable 的 _____________。 9. myDataSet.Tables.Add() 语句执行后 myDataSet 中 增 加 的 表 的 名 称 是 _____________。 10. 语句 Class Employee:Inherits Person 中派生类是_____________。 二、选择题(选择一个正确答案的代码填入括号中,每空 2 分,共 20 分) 1、 以下语句执行后,myDataSet 中增加的表的名称是( )。 dim myDataSet as new DataSet() myDataSet.Tables.Add() A. Table1 B. Table2 C. TableN D. Nothing

2、包含在DutaSet集合中的集合是(). A.Tables集合 B.Columns集合 C.Ros集合 D.Paramcters集合 3、委检索指定主表记录的所有子表相关记录,应该调用的方法是〔), A.GetParentRows B.GeChaldRows C.GetRelation D.GetRows 4,以下语句实现的是面向对象的《)。 Public Class Customerlnfo Inherits Personlnfo A封装 B.接口 C,继承 D.多态 S、Employee是个结构类型,其描述如下: Public Structure Employee Public Name As String蛙名 Public EmployeeNumber As Integer'编号 Publie Salary As Double工资 Public Borus As Double'加班费 Sub CalculateBonus(By Val hours As Single) 核照每天8小时每月22天计算,加班费是工资的2倍 Bonus-Salary◆hours/(8◆22) If EmployeeNumber 100 Then B05=B0nus·2100号以内的员工加班费臣倍 End If End Sub 2
2 2、 包含在 DataSet 集合中的集合是( )。 A. Tables 集合 B. Columns 集合 C. Rows 集合 D. Parameters 集合 3、 要检索指定主表记录的所有子表相关记录,应该调用的方法是( )。 A. GetParentRows B. GetChildRows C. GetRelation D. GetRows 4、 以下语句实现的是面向对象的( )。 Public Class CustomerInfo Inherits PersonInfo A. 封装 B. 接口 C. 继承 D. 多态 5、 Employee 是个结构类型,其描述如下: Public Structure Employee Public Name As String '姓名 Public EmployeeNumber As Integer '编号 Public Salary As Double '工资 Public Bonus As Double '加班费 Sub CalculateBonus(ByVal hours As Single) '按照每天 8 小时每月 22 天计算,加班费是工资的 2 倍 Bonus = Salary * hours / (8 * 22) If EmployeeNumber < 100 Then Bonus = Bonus * 2 '100 号以内的员工加班费翻倍 End If End Sub

End Structure 请问以下写法正确的是()和《), A.e1EmployeeNumber =202 B.e1.CalculateBonus(20) C.el.CalculateBoeus(20,20) D.e1CalculateBonus(20) E.el.EmploveeNumber =20 6、使月Command对象进行数据操作时,默认情况下CommandType属性为). A.CommandType.Text B.CommandType CommandText C.CommandType StoredProcedure D.CommandType Procedure 7、Qum是个枚举类型,包含4个值。其定义如下: Enum Quarter Spring Summer Autumn Winter End Enum 请问以下代码执行后变量Lt的值是〔). Dim q As quarter'定文Quig枚举变量 Dim q_int As Integer枚举变量的数值 g=q单ter.Autumn Lim■g'获得枚举的数值 A0 B.1 C.2 D.3 E.4 8,要检素指定主表记录的所有子表相关记录,应该调用的方法是()
3 End Structure 请问以下写法正确的是( )和( )。 A. e1^EmployeeNumber =202 B. e1.CalculateBonus(20) C. e1.CalculateBonus(20,20) D. e1^CalculateBonus(20) E. e1.EmployeeNumber =20 6、 使用 Command 对象进行数据操作时,默认情况下 CommandType 属性为( )。 A. CommandType.Text B. CommandType.CommandText C. CommandType.StoredProcedure D. CommandType.Procedure 7、 Quarter 是个枚举类型,包含 4 个值。其定义如下: Enum Quarter Spring Summer Autumn Winter End Enum 请问以下代码执行后变量 q_int 的值是( )。 Dim q As quarter '定义 Quarter 枚举变量 Dim q_int As Integer '枚举变量的数值 q = quarter.Autumn q_int = q '获得枚举的数值 A. 0 B. 1 C. 2 D. 3 E. 4 8、 要检索指定主表记录的所有子表相关记录,应该调用的方法是( )

A.GetParentRows B.GesChildRows C.GetRelation D.GetRows 9、,NET框架提供了一个可重新分发的安装程序,它包含运行NET框架应用程序所 需的公共语言运行库和.NET框架组件。NET框架可重新分发软件包作为一个独立的可执 行文件()提供。 A.DotnetFrameWork.exe B.Dotnetfx exe C.Dotnetfx.com D.DotnetFrameWork.com 三、判斯题(正确的划√,情的划×并指明原因,每小题2分,共16分) 1.String ToL0r的功能是将字符申转换为小写。() 2创建派生类时,可以通过Inherit西指定要簇承的基类,通过Notlnheritable禁止某 个类称为基类。通过MustInherit指定“抽象类”。() 3.可以通过语句myDataView.Sort=“EmployeelD对数据试图进行数据过滤。 4.数据集中的数据表名称是区分大小写的,ds Tables("Employce)和 d在Tables"employees)不是同一个表。() 5.多态就是月一个类中的方法可以有多个不同的实现形式。() 6用方法可以实现类的属性的功隆。() 7.DirectoryInfo类提供静态方法,不需要创建对象就可以直接使用.() 8使川Md函数获得子字符串时,其索引从1开始。() 四、简答题(每小题8分,共24分) 1.以下程序列出C盘根目录下的所有子目录,请仔细检查代码,指出其中的情误并 改正: Dim thisDir As DirectoryInfo If thisDir Exists Then Dim subDirectories As DirectoryInfo)'定义目录数划 使用GetDirectories方法迈回一组DirectoryInfo数组
4 A. GetParentRows B. GetChildRows C. GetRelation D. GetRows 9、 .NET 框架提供了一个可重新分发的安装程序,它包含运行.NET 框架应用程序所 需的公共语言运行库和.NET 框架组件。.NET 框架可重新分发软件包作为一个独立的可执 行文件( )提供。 A. DotnetFrameWork.exe B. Dotnetfx.exe C. Dotnetfx.com D. DotnetFrameWork.com 三、判断题(正确的划√,错的划×并指明原因,每小题 2 分,共 16 分) 1. String.ToLower 的功能是将字符串转换为小写。( ) 2. 创建派生类时,可以通过 Inherits 指定要继承的基类,通过 NotInheritable 禁止某 个类称为基类,通过 MustInherit 指定“抽象类”。( ) 3. 可以通过语句 myDataView.Sort= “EmployeeID” 对数据试图进行数据过滤。 ( ) 4. 数 据 集 中 的 数 据 表 名 称 是 区 分 大 小 写 的 , ds.Tables("Employees") 和 ds.Tables("employees")不是同一个表。( ) 5. 多态就是同一个类中的方法可以有多个不同的实现形式。( ) 6. 用方法可以实现类的属性的功能。( ) 7. DirectoryInfo 类提供静态方法,不需要创建对象就可以直接使用。( ) 8. 使用 Mid 函数获得子字符串时,其索引从 1 开始。( ) 四、简答题(每小题 8 分,共 24 分) 1.以下程序列出 C 盘根目录下的所有子目录,请仔细检查代码,指出其中的错误并 改正: Dim thisDir As DirectoryInfo If thisDir.Exists Then Dim subDirectories As DirectoryInfo() '定义目录数组 '使用 GetDirectories 方法返回一组 DirectoryInfo 数组

subDirectories"thisDir.GetDirectories) 规 sgBo”目录不存在I".gBoxStyle Information) End If 2.简述类的字段和属性的区别。 3.结构s_Employee和类C_Employee定义分别如下: Public Structure S_Employee Public Name As String'姓名 Public Salary As Double'工资 End Structure Public Class C_Employee Public Name As String'姓名 Public Salary As Double工货 End Class 请问以下代码执行后,el,e2,cl,c2的Name和Saay值分别是多少? ‘测试结构 Dim el As S_Employee el.Salary =1000 el.Name-哪软伦" Dim e2 As S_Employee e2 =el e2.Name="崔林 el.Salary =2000 ‘测试类 Dim el As New C_Employee() cl.Salary 1000 cl.Name-g软伦 Dhme2 As C_Emplo∞ee c2 =cl 2Name-·辅林
5 subDirectories = thisDir.GetDirectories() Else MsgBox("目录不存在!", MsgBoxStyle.Information) End If 2. 简述类的字段和属性的区别。 3.结构 S_Employee 和类 C_Employee 定义分别如下: Public Structure S_Employee Public Name As String '姓名 Public Salary As Double '工资 End Structure Public Class C_Employee Public Name As String '姓名 Public Salary As Double '工资 End Class 请问以下代码执行后,e1, e2, c1, c2 的 Name 和 Salary 值分别是多少? ‘测试结构 Dim e1 As S_Employee e1.Salary = 1000 e1.Name = "邱钦伦" Dim e2 As S_Employee e2 = e1 e2.Name = "崔林" e1.Salary = 2000 ‘测试类 Dim c1 As New C_Employee() c1.Salary = 1000 c1.Name = "邱钦伦" Dim c2 As C_Employee c2 = c1 c2.Name = "崔林

c1.Salary =2000 五、编程题(每空4分,共16分) 在基于幸连接的环境,在创建了DataTable的数据集之后。知果需要修改记录,可以 通过修政DaTe的Rows集合中的DataRow对象来修政记录。其步骤如下, 1)定位需要修改的行 2)调用BeginEd(方法开始编辑 3)对相应列值进行修政 4)测用EndEdit确认编相或者CancelEdit取清编辑 5)执行Updae方法更新数据源 6)调用AcceptChange方法接受更改 下而的代码将DataGridl的当前行数据修改为指定的值。请根据程序代码中的注释将 程序补充完整。 获取DGd山中当前行的索引号 Dim RecNo As Integer ReeNo DataGrid1.CurrentRowindex 获得当前行的DataRow对象 Dim dr As DataRow DataSet11.Employees.RowsD 编辑当前行 dr BeginEdit() dr("FirstName")="John" dr("LastName)"Chen" d止國 "更新数据源 SqlDataAdapeerl.® (DataSet11.Employees) DataSetll.Employees④
6 c1.Salary = 2000 五、编程题(每空 4 分,共 16 分) 在基于非连接的环境,在创建了 DataTable 的数据集之后,如果需要修改记录,可以 通过修改 DataTable 的 Rows 集合中的 DataRow 对象来修改记录。其步骤如下: 1)定位需要修改的行 2)调用 BeginEdit 方法开始编辑 3)对相应列值进行修改 4)调用 EndEdit 确认编辑或者 CancelEdit 取消编辑 5)执行 Update 方法更新数据源 6)调用 AcceptChange 方法接受更改 下面的代码将 DataGrid1 的当前行数据修改为指定的值。请根据程序代码中的注释将 程序补充完整。 '获取 DataGrid1 中当前行的索引号 Dim RecNo As Integer RecNo = DataGrid1.CurrentRowIndex '获得当前行的 DataRow 对象 Dim dr As DataRow = DataSet11.Employees.Rows(①__________) '编辑当前行 dr.BeginEdit() dr("FirstName") = "John" dr("LastName") = "Chen" dr. ②__________ '更新数据源 SqlDataAdapter1. ③__________ (DataSet11.Employees) DataSet11.Employees. ④__________

参考咨案 一,填空题〔每空2分,共24分》 1.13 2.派生类 3 Person Employee 4 DataView或数据视阁 5.Update 6封数 7.Seek &计算列 9.Tsblel 10.Employee 二,选屏题〔选择一个正确答案的代码填入括号中,何空2分,共20分) 1.A 2.A3.B 4.B 5.BE《与次序无关) 6.A7.C 8.B 9.B 三、列断题〔正确的别√,错的划X并指明原因,每小题2分,共16分) 1,2,4,6,8是正确的,其余是钳误的。 3.原因:S只论实见作子不论实现过滤. 5,星因,多态是基类中声明的方法在其派生类中可以用不问的方式米实现。 7.g因:DirectoryInfo类需要建对象才能使用,Directory类可以摄供静态方法,不 需要创建对象就可以直接使用 四、商答题〔每小题8分,共24分) L.容: 将第一句Dim thisDir As DirectoryInfo修成为: Dim thisDir As New DirectoryInfolc.) 2容:费的成员包括成员变量和成员函数。公开的成员变量又称为字段,而用 凸y肝句定义的成员变量则称为属性:属性使用属性过界控如何设置成返回值,而 字段只是公共变量。 3答: el.Name-阝铁伦,el.Salary-2000 7
7 参考答案 一、填空题(每空 2 分,共 24 分) 1. 1 3 2. 派生类 3. Person Employee 4. DataView 或数据视图 5. Update 6. 封装 7. Seek 8. 计算列 9. Table1 10. Employee 二、选择题(选择一个正确答案的代码填入括号中,每空 2 分,共 20 分) 1.A 2.A 3.B 4.B 5.BE(与次序无关) 6.A 7.C 8.B 9.B 三、判断题(正确的划√,错的划×并指明原因,每小题 2 分,共 16 分) 1,2,4,6,8 是正确的,其余是错误的。 3.原因:Sort 只能实现排序不能实现过滤。 5.原因:多态是基类中声明的方法在其派生类中可以用不同的方式来实现。 7.原因:DirectoryInfo 类需要创建对象才能使用,Directory 类可以提供静态方法,不 需要创建对象就可以直接使用 四、简答题(每小题 8 分,共 24 分) 1. 答: 将第一句 Dim thisDir As DirectoryInfo 修改为: Dim thisDir As New DirectoryInfo(“c:\”) 2. 答:类的成员包括成员变量和成员函数。公开的成员变量又称为字段,而用 Property 语句定义的成员变量则称为属性;属性使用属性过程控制如何设置或返回值,而 字段只是公共变量。 3. 答: e1.Name = "邱钦伦", e1.Salary = 2000

e2.Nme="福林".e25 alary=1D00 e1.Name =""el.Salary 2000 e2.me-"摆林".c2.Salary-2000 五、编程题〔每空4分,共6分》 DRecNo ②EndEdit(0 3Update ①AocerxChanges)
8 e2.Name = "崔林", e2.Salary = 1000 c1.Name = "崔林", c1.Salary = 2000 c2.Name = "崔林", c2.Salary = 2000 五、编程题(每空 4 分,共 16 分) ①RecNo ②EndEdit() ③Update ④AcceptChanges()