1、面向对象程序设计VB江西财经大学考试试卷试卷代码: 03694A卷 授课课时:80课程名称:面向对象程序设计(VB) 适用对象:选课班一、 填空题(每空1分,共16分)1.构造函数和析构函数的意义分别是 和 。2.命令窗口用于在集成开发环境中发出命令或调试和计算表达式,它有 和 两种模式。3.ReDim语句重定义数组大小时,缺省情况下原数组中的存储的数据会丢失,但可以使用关键字 来保证原数组中的数据能保留下来。4.CLR的中文含义是 。5.为了方便用户操作,VS.NET系统在FileDialog的基础上,系统已派生了 和 文件对话框类。6. 过程为应用程序的启动点,也就是运行代码时最优先访问的
2、函数。7. 语句允许用户直接使用在其他命名空间中定义的类及类型,而无需使用限定引用。8.窗体是继承.NET类库中的 类。9. 类提供访问文件的方法,包括标准输入、输出和错误设备。10. 要进行二进制文件存取,必须创建 与 对象。11. 在任何图形绘制之前,一定要先用 类创建一个对象。12. 对象是DataSet对象和数据源之间的桥梁。二、 单项选择题(从下列各题四个备选答案中选出一个正确答案,并将其代号写在答题纸相应位置处。答案错选或未选者,该题不得分。每小题2分,共16分。)1.以下关于静态成员正确的说法是 A 静态成员可以不用Static修饰符修饰B 静态成员只能用类名访问C静态成员和非静
3、态成员不能同时在类中定义D静态成员可以被类的实例调用2.VB.NET的项目文件是以 扩展名来保存。A.sln B.vb C. .vbproj D.sou3.在类视图窗口以 结构显示当前项目中的所有类。A 树状结构B 下拉列表C 菜单D 表4.以下 不是数据提供程序所提供的四个核心对象。A ConnectionB DataReaderC ParserD DataAdapter5.有关继承下列说法不正确的是 A 所有类缺省都是可继承的,除非在类定义时使用NotInheritable关键字修饰。B 在VB.NET中,一个类的基类可能有多个。C为了防止基类中需要封装保密的成员在派生类中被泄露出来,派生
4、类定义的访问权限必须比其基类更为严格或者至少与之相同。D在Visaul Basic .NET中,一个类的基类只能有一个。6在VB.NET中,关于构造函数的说法,下列说法不正确的是 A 可以指定构造函数的返回值B 构造函数可以重载C 构造函数的过程可以带有参数D 构造函数的过程名一定是New7.菜单控件支持 事件。A ClickB MouseDownC KeyPressD Leave8.Err对象的 属性返回了错误号A NumberB SourceCDescriptionDHlepContext三、 阅读程序,根据要求回答问题。(每小题每5分,共20分)1.指出以下文件操作程序代码的功能,并画出
5、Windows窗体的界面图。Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click OpenFileDialog1.Filter = 文本文件(*.txt)|*.txt|RTF格式文件(*.RTF)|*.RTF OpenFileDialog1.FilterIndex = 1 OpenFileDialog1.Title = 打开文件 OpenFileDialog1.InitialDirectory = Application.Startu
6、pPath OpenFileDialog1.RestoreDirectory = True OpenFileDialog1.ShowDialog() Fname = OpenFileDialog1.FileNameIf (Fname ) Then If (OpenFileDialog1.FilterIndex = 1) Then RichTextBox1.LoadFile(Fname, RichTextBoxStreamType.PlainText) Else RichTextBox1.LoadFile(Fname, RichTextBoxStreamType.RichText) End If
7、 StatusBar1.Panels(0).Text = “读状态” StatusBar1.Panels(1).Text = “未保存” End IfEnd SubPrivate Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click SaveFileDialog1.Filter = 文本文件(*.txt)|*.txt|RTF格式文件(*.RTF)|*.RTF SaveFileDialog1.FilterIndex = 1 SaveFileDialog
8、1.Title = 保存文件 SaveFileDialog1.InitialDirectory = Application.StartupPath SaveFileDialog1.RestoreDirectory = True SaveFileDialog1.ShowDialog() Fname = SaveFileDialog1.FileName If (Fname ) Then If (OpenFileDialog1.FilterIndex = 1) Then RichTextBox1.SaveFile(Fname, RichTextBoxStreamType.PlainText) Els
9、e RichTextBox1.SaveFile(Fname, RichTextBoxStreamType.RichText) End If StatusBar1.Panels(0).Text = 写状态 StatusBar1.Panels(1).Text = 已保存 End If End Sub Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick StatusBar1.Panels(2).Text = DateTime.Now.ToStri
10、ng(T) End Sub Private Sub RichTextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles RichTextBox1.TextChanged RichTextBox1.Modified=false If RichTextBox1.Modified Then StatusBar1.Panels(1).Text = 未保存 Else StatusBar1.Panels(1).Text = “已保存” RichTextBox1.Modified=false
11、 End If End Sub2.指出下列程序的运行结果,并说明该程序的功能。Module Module1 WithEvents frm1 As New Form() Dim label1 As New Label() Sub Main() label1.Size = New Size(80, 20) label1.BackColor = Color.Yellow label1.TextAlign = ContentAlignment.MiddleCenter label1.BorderStyle = BorderStyle.Fixed3D frm1.Controls.AddRange(New
12、 System.Windows.Forms.Control() label1) Application.Run(frm1) End Sub Public Sub frm1_MouseMove(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles frm1.MouseMove label1.Location = New Point(e.X, e.Y - 15) label1.Text = X= & e.X & ,Y= & e.Y End SubEnd Module3. 分析下列程序的运行结果
13、,说明该程序的功能。Public Class login Inherits System.Windows.Forms.Form#Region Windows 窗体设计器生成的Code 系统自动创建的程序,为了节省篇幅,在此处省略。#End Region Dim mymdimain As MainMDI Private Sub btnOk_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnOk.Click If txtUserName.Text.Trim = Then showMsg(用户名不
14、许为空!) txtUserName.Focus() Exit Sub End If If txtPassWord.Text.Trim = Then showMsg(密码不许为空!) txtPassWord.Focus() Exit Sub End If Dim i As Integer Dim strsql As String Dim mydataset As New DataSet Dim myTable As DataTable Dim uname As String Dim psw As String uname = Trim(txtUserName.Text) psw = Trim(t
15、xtPassWord.Text) Try strsql = SELECT * FROM Operator WHERE Name= + uname + and Password= + psw + mydataset = executeSelectQuery(strsql, manager) strsql = SELECT * FROM Authority WHERE Name= & uname & myTable = executeSelectQuerygettable(strsql) If mydataset Is Nothing Then showMsg(用户名或密码错误!, MsgBoxS
16、tyle.Exclamation) Return End If If myTable Is Nothing Then showMsg(此用户无任何权限!, MsgBoxStyle.Exclamation) Return End If Catch ex As Exception Exit Sub End Try If mydataset.Tables(manager).Rows.Count = 0 Then showMsg(用户名或密码错误!, MsgBoxStyle.Exclamation) Else GlobalVariable.PERMISSION = New ArrayList For
17、i = 0 To myTable.Rows.Count - 1GlobalVariable.PERMISSION.Add(myTable.Rows(i).Item(Permission) & ) Next Me.Close() End If End Sub Private Sub login_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing mymdimain.setpower() End Sub Private Sub login_L
18、oad(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load PERMISSION = New ArrayList mymdimain.setpower() End Sub Private Sub btnExit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnExit.Click Me.Close() End SubEnd Class其中:setpower()为权限设置方法,在此省略
19、了。4.指出下列程序的运行结果,并说明该程序中使用了面向对象技术中的一个什么概念,它实现了一个什么功能。Public Class ShapePublic Overridable Function GetArea() As Double Return (0) End Function Public Overridable Function GetPerim() As Double Return (0) End FunctionEnd ClassClass Rectangle Inherits Shape Public Width As Double Public Length As Double
20、 Public Sub New(ByVal a As Double, ByVal b As Double) Width = a : Length = b End SubPublic Overrides Function GetArea() As Double Return (Width * Length) End FunctionPublic Overrides Function GetPerim() As Double Return (2 * (Length + Width) End FunctionEnd ClassClass Circle Inherits Shape Public Ra
21、dius As Double Public Sub New(ByVal r As Double) Radius = r End Sub Public Overrides Function GetArea() As Double Return (Math.PI * Radius * Radius) End FunctionPublic Overrides Function GetPerim() As Double Return (2 * Math.PI * Radius) End FunctionEnd ClassPublic Class Form1Inherits System.Windows
22、.Forms.Form#Region Windows Form Designer generated code 系统自动创建的程序,为了节省篇幅,在此处省略。#End RegionPrivate Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim a, b As Double a = Val(TextBox1.Text) b = Val(TextBox2.Text) Dim Rect As New Rectangle(a, b) TextB
23、ox3.Text = CStr(Rect.GetPerim() TextBox4.Text = CStr(Rect.GetArea() End Sub Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click Dim r As Double r = Val(TextBox5.Text) Dim Cir As New Circle(r) TextBox6.Text = CStr(Cir.GetPerim() TextBox7.Text =
24、CStr(Cir.GetArea() End SubEnd Class四、 问答题(第1小题8分,第2小题10分,共20分)1. 简述.NET的特点。2. 举例说明面向对象语言支持三种特性的应用。五、 程序设计题(第1小题8分,第2、3小题各10分,共28分)1. 编写一个关于自己的结构和类的程序。2. 编写一个我最喜爱的国产轿车评选程序。程序设计界面图5-1,程序运行界面如图5-2所示。程序运行时,在ListBox1列表框中显示所有参评轿车列表,单击按钮【】用户可以从中选择一量轿车,对于选完后不满意的轿车,还可以通过单击按钮【】实现)或将ListBox2框中所全的项目全部移回至ListBox
25、1框中(通过单击按钮【】实现)。 图5-1 程序设计界面 5-2 程序运行界面3. 请按照以下(关于信息学院部分专业学生必修学习课程的情况)图形的分析,制定每一个类所需要的数据成员与成员函数,编写一个完整的程序,实现在控制台方式下,按给出的学生实例值(例如:王行江,1985.10.25,计算机,打球;钟明华,1986.2.16,信管,跳舞)显示信管专业与计算机专业学生相关类的成员值。 Student(属性:Name、No、BirthDate、Profession、Love) (方法:English、Cprogram ) InfoStuden CompStudenVB.NET Program E
26、lectronic commerce C+ Program Numerical logic江西财经大学末考试试卷试卷代码:03694B卷 授课课时:80课程名称:面向对象程序设计(VB) 适用对象:选课班二、 填空题(每空1分,共16分)1.面向对象技术的主要特性表现在具有抽象化、 、 和 。 2.接口是对类的可用 、 和 等做一个规范描述,并且可以用它作为一种类型来使用,但是它并不真正实现代码,仅仅是一个描述。3.Visual Basic.NET默认的析构函数是 。4.在VB.NET中,你可以通过 类来操作文件夹和驱动器。5.在VB.NET中,编译时的多态性是通过 实现,运行时的多态性是通过
27、继承和 来实现的。6.说明以下在类所声明变量的差异。 Shared i As Integer Protected x As Single Public y As Single 7.要在已知的项目中添加类或Windows窗体,可以通过选取菜单中的 来实现。8.要连接SQL Server7.0以上版本的数据库时,需要使用 对象。9.在System.Drawing命名空间中, 类是绘制图形的最核心的类。六、 单项选择题(从下列各题四个备选答案中选出一个正确答案,并将其代号写在答题纸相应位置处。答案错选或未选者,该题不得分。每小题2分,共16分。)1.在使用MsgBox函数时,一定要给的参数是 。At
28、itleBpromptC、buttonD以上皆非2.当参数指定为传址调用时,调用者可以利用下面的 符号括住参数,强迫该参数的传递变成传值调用。A、B( )C D“”3.类中利用Dim所声明的变量为 A. PrivateB. PublicC. ProtectedD. Shared4.要让继承的类也能使用的变量,必须以 关键字声明。A. PrivateB. DimC. ProtectedD. Used5.当类中的函数以MustOverride声明时,类必须以 关键字声明。A NoInheritableB OverridableC MustInheritD Overrides6.模块文件存储时,它的
29、扩展名是 。A .mdlB .modC .vbD .abs7.在StreamReader类中共定义了四种读取方式,其中从当前流中读取一行字符并将数据作为字符串返回的是 A ReadB ReadLineC ReadBlockDReadtoEnd8. 以下 的级别可以使用Static语句A 过程级B 模块级C 类级D命名空间七、 阅读程序,根据要求回答问题。(每小题每5分,共20分)1. 分析下列程序的运行结果,说明该程序的功能,并画出Windows窗体界面。Imports System.Windows.FormsImports System.DrawingModule Module1 Dim f
30、rm1 As New Form() Dim Mdifrm1 As New Form() Dim Mdifrm2 As New Form() WithEvents btn1 As New Button Sub Main() frm1.IsMdiContainer = True btn1.Size = New Size(0, 40) btn1.Text = 子窗体水平排列 btn1.Dock = DockStyle.Top frm1.Controls.AddRange(New System.Windows.Forms.Control() btn1) Mdifrm1.MdiParent = frm1 Mdifrm2.Text = MDI子窗体二 Mdifrm2.MdiPar
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1