
期末综合练习一 一、单项选择题 1.如果要在文本框中键入字符时,只显示某个字符,如星号(*),应设置文本框的( 属性。 A.Caption B.PasswordChar C.Text D.Locked 2.后缀为.bas的文件表示VB的()。 A.类模块文件 B.窗体文件 C.工程文件 D.标准类模块文件 3.MsgBox函数的返回值的数据类型是()。 A.字符串 B.日期型 C.逻辑型 D.整型 4.无论何种控件,共同具有的属性是()。 A.Text属性 B.Caption属性 C.Name属性 D.Autosize属性 5.要使窗体在运行时不可改变窗体的大小和没有最大化和最小化按钮,只要对下列 ()属性设置就有效。 A、Max Button B、BorderSyle C、Width D、MinButton 6.如果对象的名称为Mytext.,而且对象有一个属性Text,那么在代码中引用该属性的 正确格式是()。 A.Text.Mytext B.Mytext.Text C.Mytext.(Text) D.Mytext*Text 7.VB程序中通常不会产生错误提示的是( )。 A.编译错误 B.实时错误 C.运行时错误 D.逻辑错误 8.在设计动画时,用时钟控件来控制动画速度的属性是()。 A.Enabled B.Interval C.Timer D.Move 9.要设置命令按钮的背景图形,必须设置的两个属性是()。 A,Style和Picture B.Style和Icon C.Caption和Picture D.alue和Icon 10.要在窗体上显示“欢迎您!”,使用的语句是()。 A.Form.caption=-"欢迎您!" B.Forml.caption=-"欢迎您!" C.Forml.print"欢迎您!" D.Form.print"欢迎您!" 11.下列关于变量的说法不正确的是()。 A,局部变量是指那些在过程中用Dim语句或Static语句声明的变量 B.局部变量在声明它的过程执行完毕后就被释放了 C.静态局部变量是在过程中用Static语句声明的 D.局部变量的作用域仅限于声明它的过程 12.关于语句行,下列说法正确的是()。 A.一行只能写一条语句 B.长度不能超过255个字符 C.每行的首字符必须大写 D.一条语句可以分多行书写
1 期末综合练习一 一、单项选择题 1.如果要在文本框中键入字符时,只显示某个字符,如星号(*),应设置文本框的( ) 属性。 A.Caption B.PasswordChar C.Text D.Locked 2.后缀为.bas 的文件表示 VB 的( )。 A.类模块文件 B.窗体文件 C.工程文件 D.标准类模块文件 3.MsgBox 函数的返回值的数据类型是( )。 A.字符串 B.日期型 C.逻辑型 D.整型 4.无论何种控件,共同具有的属性是( )。 A.Text 属性 B.Caption 属性 C.Name 属性 D.Autosize 属性 5.要使窗体在运行时不可改变窗体的大小和没有最大化和最小化按钮,只要对下列 ( )属性设置就有效。 A、MaxButton B、BorderSyle C、Width D、MinButton 6.如果对象的名称为 Mytext,而且对象有一个属性 Text,那么在代码中引用该属性的 正确格式是( )。 A.Text.Mytext B.Mytext.Text C.Mytext.(Text) D.Mytext*Text 7.VB 程序中通常不会产生错误提示的是( )。 A.编译错误 B.实时错误 C.运行时错误 D.逻辑错误 8.在设计动画时,用时钟控件来控制动画速度的属性是( )。 A.Enabled B.Interval C.Timer D.Move 9.要设置命令按钮的背景图形,必须设置的两个属性是( )。 A.Style 和 Picture B.Style 和 Icon C.Caption 和 Picture D.Value 和 Icon 10.要在窗体上显示“欢迎您!”,使用的语句是( )。 A.Form.caption="欢迎您!" B.Form1.caption="欢迎您!" C.Form1.print "欢迎您!" D.Form. print "欢迎您!" 11.下列关于变量的说法不正确的是( )。 A.局部变量是指那些在过程中用 Dim 语句或 Static 语句声明的变量 B.局部变量在声明它的过程执行完毕后就被释放了 C.静态局部变量是在过程中用 Static 语句声明的 D.局部变量的作用域仅限于声明它的过程 12.关于语句行,下列说法正确的是( )。 A.一行只能写一条语句 B.长度不能超过 255 个字符 C.每行的首字符必须大写 D.一条语句可以分多行书写

13.如下数组声明语句,正确的是()。 A.Dim a[3,4]As Integer B.Dim a(3,4)As Integer C.Dim a(n.n)As Integer D.Dim a(34)As Integer 14.下列正确的赋值语句是()。 A.x+y=20 B.y=X+20 C.3x=y D.S=元*r*I 15.若使图像框Image控件自动适应其中的图形大小,应()。 A.将控件的AutoSize属性设为True B,将控件的AutoSize属性设为False C.将控件的Stretche属性设为True D.将控件的Stretche属性设为False 16.如果希望以模态方式显示窗体Forml,下列正确的语句是()。 A.Forml.Show B.Forml.Show 0 C.Forml.Show 1 D.以下都不正确 17.执行Forml..Scale(-14,14)-(14,-14语句后,Forml窗体坐标系x轴和y轴的正方向 是()。 A.向左和向下 B.向右和向上 C.向左和向上 D,向右和向下 18.对于定时器(Timer)控件,设置其定时是否开启的属性是()。 A.Index B.Tag C.Enabled D.Left l9.Timer控件可用于后台进程中,可在Timer事件内编程,要停止触发Timer事件,需 要设置的属性是() A.Interval=0 Enabled=False B.Interval=0 Visible=False C.Interval=0 E Enabled=False D.Enabled=False Visible=False 20.多窗体程序是由多个窗体组成,在缺省情况下,VB在应用程序执行时,总是把( ) 指定为启动窗体。 A.不包含任何控件的窗体 B.设计时的第一个窗体 C.包含控件最多的窗体 D.命名为Frml的窗体 2l.使用ADO数据模型时,建立Recordset和Connection对象连接的属性是()。 A.Execute B.CommandType C.Open D.ActiveConnection 22.Dim I As Integer,.则运行时变量I的初始值是()。 A.0 B.1 C.-1 D.空值 23.要发送数据,通称使用Winsock控件的()。 A.Accept方法 B.Listen方法 C.SendData方法 D.GetDate方法 24.使用ADO数据模型时,建立Recordset和Connection对象连接的属性是()。 A.Execute B.Open C.ActiveConnection D.CommandType 25.用来从数据库表中删除记录的SQL命令是()。 2
2 13.如下数组声明语句,正确的是( )。 A.Dim a[3,4] As Integer B.Dim a(3,4) As Integer C.Dim a(n,n) As Integer D.Dim a(3 4) As Integer 14.下列正确的赋值语句是( )。 A.x+y=20 B.y=x+20 C.3x=y D.s=*r*r 15.若使图像框 Image 控件自动适应其中的图形大小,应( )。 A.将控件的 AutoSize 属性设为 True B .将控件的 AutoSize 属性设为 False C.将控件的 Stretche 属性设为 True D.将控件的 Stretche 属性设为 False 16.如果希望以模态方式显示窗体 Form1,下列正确的语句是( )。 A.Form1.Show B.Form1.Show 0 C.Form1.Show 1 D.以下都不正确 17.执行 Form1.Scale (-14, 14)-(14, -14)语句后,Form1 窗体坐标系 x 轴和 y 轴的正方向 是( )。 A.向左和向下 B.向右和向上 C.向左和向上 D.向右和向下 18.对于定时器(Timer)控件,设置其定时是否开启的属性是( )。 A.Index B.Tag C.Enabled D.Left 19.Timer 控件可用于后台进程中,可在 Timer 事件内编程,要停止触发 Timer 事件,需 要设置的属性是( ) A.Interval=0 或 Enabled=False B.Interval=0 或 Visible=False C.Interval=0 且 Enabled=False D.Enabled=False 且 Visible=False 20.多窗体程序是由多个窗体组成,在缺省情况下,VB 在应用程序执行时,总是把( ) 指定为启动窗体。 A.不包含任何控件的窗体 B.设计时的第一个窗体 C.包含控件最多的窗体 D.命名为 Frm1 的窗体 21.使用 ADO 数据模型时,建立 Recordset 和 Connection 对象连接的属性是( )。 A.Execute B.CommandType C.Open D.ActiveConnection 22.Dim I As Integer,则运行时变量 I 的初始值是( )。 A.0 B.1 C.-1 D.空值 23.要发送数据,通称使用 Winsock 控件的( )。 A.Accept 方法 B.Listen 方法 C.SendData 方法 D.GetDate 方法 24.使用 ADO 数据模型时,建立 Recordset 和 Connection 对象连接的属性是( )。 A.Execute B.Open C.ActiveConnection D. CommandType 25.用来从数据库表中删除记录的 SQL 命令是( )

A.DELETE B.SELECT C.UPDATE D.WHERE 26.下列关于变量的说法不正确的是()。 A.局部变量是指那些在过程中用Dim语句或Static语句声明的变量 B.局部变量的作用域仅限于声明它的过程 C.静态局部变量是在过程中用Static语句声明的 D.局部变量在声明它的过程执行完毕后就被释放了 27.不属于VB数据库引擎的是()。 A.ODBC B.BDE C.Jet引擎 D.OLE DB 28.下列数据对象模型中采用OLE DB访问数据库的是()。 A.DAO B.ADO C.RDO D,RDO和ADO 29.如果创建了命令按钮数组控件,那么Click事件的参数是() A.Tag B.Caption C.Index D.没有参数 30.为了在运行时把d:pic文件夹下的图形文件ajpg装入图片框Picturel中,所使用的 语句为(。 A.Picture1.Text=LoadPicture("d:\pic\a.jpg") B.Picture1.Picture =LoadPicture("d:\pic\a.jpg") C.Picturel.Picture=LoadPicture(d:\picla.jpg) D.Picturel.Picture=Load("d:\picla.jpg") 二、填空题 1.在VB中想获得帮助,需要按的键是 :要设置断点需要按 键。 2.在VB中,要想获得某个相关控件或语句的帮助信息,一般可首先选中该控件或语句, 然后按 键。 3.Winsock控件主要用来编制基于 协议的网络应用程序。 4.表达式8+13Mod2*4+3的值是 5.定时器(Timer)控件可识别的事件是 发生该事件的时间间隔由定时器 的 属性设置。 6.全局变量在整个应用程序中有效,一般在标准模块中使用 语句声明。 7.在控件数组中,所有元素的 属性均相同,数组中的每个元素由 属 性指定。 8.若窗体Forml左上角坐标为(0,600),右下角的坐标为(800,-200)。则X轴的正 向向 ,Y轴的正向向 9.假设ADOcn为一个Connection对象,那么在VB程序中声明并创建ADOcn的语句 是 10.将图片框的AutoSize属性设置成 时,可使图片框根据图片调整大小。 11.一个VB应用程序可以包含 个vbp文件。 12.Winsock控件主要用来编制基于 或 协议的网络应用程序。 13.列表框控件中最后一项的序号等于ListCount属性减 14.VB中,Access数据库属于 。(说明是哪种数据库类型) 15.全局变量是指那些在 中有效的变量,一般在模块代码编辑器的 3
3 A.DELETE B.SELECT C.UPDATE D.WHERE 26.下列关于变量的说法不正确的是( )。 A.局部变量是指那些在过程中用 Dim 语句或 Static 语句声明的变量 B.局部变量的作用域仅限于声明它的过程 C.静态局部变量是在过程中用 Static 语句声明的 D.局部变量在声明它的过程执行完毕后就被释放了 27.不属于 VB 数据库引擎的是( )。 A.ODBC B.BDE C.Jet 引擎 D.OLE DB 28.下列数据对象模型中采用 OLE DB 访问数据库的是( )。 A.DAO B.ADO C.RDO D.RDO 和 ADO 29.如果创建了命令按钮数组控件,那么 Click 事件的参数是( ) A.Tag B.Caption C.Index D.没有参数 30.为了在运行时把 d:\pic 文件夹下的图形文件 a.jpg 装入图片框 Picture1 中,所使用的 语句为( )。 A.Picture1.Text=LoadPicture("d:\pic\a.jpg") B.Picture1. Picture =LoadPicture("d:\pic\a.jpg") C.Picture1. Picture =LoadPicture(d:\pic\a.jpg) D.Picture1. Picture =Load("d:\pic\a.jpg") 二、填空题 1.在 VB 中想获得帮助,需要按的键是 ;要设置断点需要按 键。 2. 在 VB 中,要想获得某个相关控件或语句的帮助信息,一般可首先选中该控件或语句, 然后按 键。 3.Winsock 控件主要用来编制基于 或 协议的网络应用程序。 4.表达式 8+13 Mod 2*4+3 的值是 。 5.定时器(Timer)控件可识别的事件是 ,发生该事件的时间间隔由定时器 的 属性设置。 6.全局变量在整个应用程序中有效,一般在标准模块中使用 语句声明。 7.在控件数组中,所有元素的 属性均相同,数组中的每个元素由 属 性指定。 8.若窗体 Form1 左上角坐标为(0,600),右下角的坐标为(800,-200)。则 X 轴的正 向向 ,Y 轴的正向向 。 9.假设 ADOcn 为一个 Connection 对象,那么在 VB 程序中声明并创建 ADOcn 的语句 是 。 10. 将图片框的 AutoSize 属性设置成 时,可使图片框根据图片调整大小。 11.一个 VB 应用程序可以包含 个 vbp 文件。 12.Winsock 控件主要用来编制基于 或 协议的网络应用程序。 13.列表框控件中最后一项的序号等于 ListCount 属性减 。 14.VB 中,Access 数据库属于 。(说明是哪种数据库类型) 15.全局变量是指那些在 中有效的变量,一般在模块代码编辑器的

顶部使用 声明 16.VB应用程序与数据库进行通信的主要机制称为 I7.Dim i As Integer,则运行时变量i的初始值是 18.设某个程序中要用到一个二维数组,要求数组名为A,类型为字符串类型,第一维 下标从1到3,第二维下标从-1到2,则相应的数组声明语句 为 19.VB中参数传递的方式有两种,一种是 参数,另一种是 参数。 20. 列表框控件中最后一项的序号等于ListCount属性减 三、阅读程序题 阅读下列程序并写出程序运行结果 1. Private Sub Form Click() Dim I As Integer,j As Integer Dim cAs Integer c=1 For I=1To3 Forj=1To2 c=c+3 Nextj NextI Print c End Sub 文件框Textl的输出结果是: 2. Private Sub Commandl Click() Dim Sum1 As Integer,Sum2 As Integer Sum1=0:Sum2 2 Fori=1To2 Forj=1Toi Sum2 Sum2 j Next j Suml=Suml Sum2 Next i Print Suml End Sub 写出程序运行时单击Command1按纽后,Forml上的输出结果。 3. Private Sub Command1 Click() Dim s As Double Dim i As Integer
4 顶部使用 声明 16.VB 应用程序与数据库进行通信的主要机制称为 。 17.Dim i As Integer,则运行时变量 i 的初始值是 。 18.设某个程序中要用到一个二维数组,要求数组名为 A,类型为字符串类型,第一维 下标从 1 到 3 , 第 二 维 下 标 从 -1 到 2 , 则 相 应 的 数 组 声 明 语 句 为 。 19.VB 中参数传递的方式有两种,一种是 参数,另一种是 参数。 20.列表框控件中最后一项的序号等于 ListCount 属性减 。 三、阅读程序题 阅读下列程序并写出程序运行结果 1. Private Sub Form_Click() Dim I As Integer, j As Integer Dim c As Integer c = 1 For I = 1 To 3 For j = 1 To 2 c = c + 3 Next j Next I Print c End Sub 文件框 Text1 的输出结果是: 2. Private Sub Command1_Click() Dim Sum1 As Integer, Sum2 As Integer Sum1 = 0: Sum2 = 2 For i = 1 To 2 For j = 1 To i Sum2 = Sum2 * j Next j Sum1 = Sum1 + Sum2 Next i Print Sum1 End Sub 写出程序运行时单击 Command1 按纽后,Form1 上的输出结果。 3. Private Sub Command1_Click() Dim s As Double Dim i As Integer

s=5 i=1 Do While i<9 i=i+2 s=s+i Loop Textl.Text=s End Sub 写出程序运行时,单击命令按钮文本框Text1中的输出结果。 w Private Sub Commandl_Click() Do While x 50 X=(x+1)*(x+2) n=n+1 Loop Text1.Text Str(n) Text2.Text Str(x) End Sub 写出程序运行时单击Commandl按纽后,textl和text2上的输出结果。 Function F(a As Integer) b=2 Static c b=b+1 c=c+1 F a b c End Function Private Sub Command1_Click() Dim a As Integer a=2 For i 1 To 3 Print F(a) Next i End Sub 写出程序运行时,单击命令按钮在窗体上的输出结果。 6. Private Sub Form Click() a=3:b=4 Print "A=";a;"B=";b
5 s = 5 i = 1 Do While i < 9 i = i + 2 s = s + i Loop Text1.Text = s End Sub 写出程序运行时,单击命令按钮文本框 Text1 中的输出结果。 4. Private Sub Command1_Click() Do While x < 50 x = (x + 1) * (x + 2) n = n + 1 Loop Text1.Text = Str(n) Text2.Text = Str(x) End Sub 写出程序运行时单击 Command1 按纽后,text1 和 text2 上的输出结果。 5. Function F(a As Integer) b = 2 Static c b = b + 1 c = c + 1 F = a + b + c End Function Private Sub Command1_Click() Dim a As Integer a = 2 For i = 1 To 3 Print F(a) Next i End Sub 写出程序运行时,单击命令按钮在窗体上的输出结果。 6. Private Sub Form_Click() a = 3: b = 4 Print "A="; a; "B="; b

Call mult(a) Print "A=";a;"B=";b End Sub Private Sub mult(x) X=3+x b=5+b End Sub 写出程序运行后,单击窗体时的输出结果。 Private Sub Command1 Click() Dim a As Integer:Dim b As Integer a=10:b=20 Changel a,b Print "Al=";a,"Bl=";b a=10:b=20 Change2 a,b Print "A2=";a,"B2=";b End Sub Sub Changel(ByVal x As Integer,ByVal y As Integer) t x:x y:y=t End Sub Sub Change2(x As Integer,y As Integer) t x:x y:y t End Sub 写出程序运行时,单击窗体Forml上的输出结果。 Private Sub Command1_Click() Static b As Integer Dim I As Integer I=1 Do b=b+I I=I+1 Loop While I <=4 Text1.Text =b Text2.Text =I End Sub 写出程序运行时两次单击Commandl按纽后,文本框Text1、Text2上的输出结果。 四、完善程序题 6
6 Call mult(a) Print "A="; a; "B="; b End Sub Private Sub mult(x) x = 3 + x b = 5 + b End Sub 写出程序运行后,单击窗体时的输出结果。 7. Private Sub Command1_Click() Dim a As Integer: Dim b As Integer a = 10: b = 20 Change1 a, b Print "A1="; a, "B1="; b a = 10: b = 20 Change2 a, b Print "A2="; a, "B2="; b End Sub Sub Change1(ByVal x As Integer, ByVal y As Integer) t = x: x = y: y = t End Sub Sub Change2(x As Integer, y As Integer) t = x: x = y: y = t End Sub 写出程序运行时,单击窗体 Form1 上的输出结果。 8. Private Sub Command1_Click() Static b As Integer Dim I As Integer I = 1 Do b = b + I I = I + 1 Loop While I <= 4 Text1.Text = b Text2.Text = I End Sub 写出程序运行时两次单击 Command1 按纽后,文本框 Text1、Text2 上的输出结果。 四、完善程序题

1.假设用Access创建了一个名为“学生.MDB”的数据库,并在其中创建了一张名为“学 生基本情况”的数据表,表中存放了学生的基本信息,如图1所示。 现在要求利用VB编写一个数据库查询程序,程序的运行界面如图2所示,基本逻辑是: 首先文本框(Textl)中输入希望查询的学生学号,然后点击“查询”按钮(Commandl),如果数 据库中存在该学号,则分别在Text2、Text3、Text4中显示学号、姓名、籍贯信息,否则提示 用户“记录不存在”并使Textl获得焦点,要求用户重新输入。当点击退出按钮(Command2) 时关闭本窗体。 学生基本情祝:表 ▣☒ 学号 姓名 籍贯 2009001 王进 天津 2009002 赵烨 河北 72009003 郭峰 山东 记绿:W幻 川心米共有记录数 图1用Access创建的学生基本情况数据表 合学生信息查询 日回☒ 输入查询条件 要查询的学号 2009003 查询 查询结果 学号 2009003 姓名 郭峰 籍贯 山东刻 退出 图2查询程序运行界面 程序如下,请补充完整。 Private ADOcn As Connection Private Sub Form_Load() 11 ADOcn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\.MDB" End Sub Private Sub Command1 Click() Dim strSQLAs String Dim ADOrs As [2]Recordset ADOrs.ActiveConnection ADOcn >
7 1.假设用 Access 创建了一个名为“学生.MDB”的数据库,并在其中创建了一张名为“学 生基本情况”的数据表,表中存放了学生的基本信息,如图 1 所示。 现在要求利用 VB 编写一个数据库查询程序,程序的运行界面如图 2 所示,基本逻辑是: 首先文本框(Text1)中输入希望查询的学生学号,然后点击“查询”按钮(Command1),如果数 据库中存在该学号,则分别在 Text2、Text3、Text4 中显示学号、姓名、籍贯信息,否则提示 用户“记录不存在”并使 Text1 获得焦点,要求用户重新输入。当点击退出按钮(Command2) 时关闭本窗体。 图 1 用 Access 创建的学生基本情况数据表 图 2 查询程序运行界面 程序如下,请补充完整。 Private ADOcn As Connection Private Sub Form_Load() [1] ADOcn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\学生.MDB" End Sub Private Sub Command1_Click() Dim strSQL As String Dim ADOrs As [2] Recordset ADOrs.ActiveConnection = ADOcn

strSQL="Select*From学生基本情况Where学号="+"'"+Textl+"," 31 If [4]ADOrs.EOF Then Text2=ADOrs..Fields(("学号") Text3=ADOrs.Fields("姓名") Text4=ADOrs.Fields("籍贯") Else MsgBox"要查询的学号不存在,请重新输入I",vbOKOnly,"信息提示” Textl=" 「51 End If End Sub Private Sub Command2_Click() UnLoad Me End 2.假设在C盘根目录中存在一个名为“学生.MDB”的Access数据库,其中包含一张 名为“学生基本情况”的数据表,表中存放了学生的基本信息,如图3所示。 现在要求利用VB编写一个数据库记录增加程序,程序的运行界面如图4所示,基本逻 辑是:分别在Textl、Text2、Text3中输入学号、姓名、籍贯信息,然后点击“保存”按钮(Commandl) 将该记录添加到数据库中。如果数据库中己经存在相同的学号信息,则程序应提示用户“记 录已存在,请重新输入”,并将焦点置于Txt1上,等待用户修改或重新输入。当点击退出按 钮(Command22)时关闭本窗体。 画学生基本情况:表 日▣☒ 学号 姓名 籍贯 2009001 李丽 河北 2009002 孙超 山东 2009003 赵佳 陕西 2009004 孙一强 江别 记录:幻川 4D川心米共有记录数: 图3 增加学生记录 请输入学生基本情况信息 学号 2009004 姓名 孙一强 籍贯 江苏 一保存 退出 6
8 strSQL = "Select * From 学生基本情况 Where 学号=" + " ' " + Text1 + " ' " .[3] If [4] ADOrs.EOF Then Text2 = ADOrs.Fields("学号") Text3 = ADOrs.Fields("姓名") Text4 = ADOrs.Fields("籍贯") Else MsgBox "要查询的学号不存在,请重新输入!", vbOKOnly, "信息提示" Text1 = "" [5] End If End Sub Private Sub Command2_Click() UnLoad Me End 2.假设在 C 盘根目录中存在一个名为“学生.MDB”的 Access 数据库,其中包含一张 名为“学生基本情况”的数据表,表中存放了学生的基本信息,如图 3 所示。 现在要求利用 VB 编写一个数据库记录增加程序,程序的运行界面如图 4 所示,基本逻 辑是:分别在Text1、Text2、Text3中输入学号、姓名、籍贯信息,然后点击“保存”按钮(Command1) 将该记录添加到数据库中。如果数据库中已经存在相同的学号信息,则程序应提示用户“记 录已存在,请重新输入”,并将焦点置于 Text1 上,等待用户修改或重新输入。当点击退出按 钮(Command2)时关闭本窗体。 图 3

图4 程序如下,请补充完整。 Private Sub Form_Load() 1 "Provider=Microsoft.Jet.OLEDB.4.0:Dataource=mdb;Persist Security Info=False" End Sub Private Sub Commandl_Click() Dim strSQLAs String [21 [31 =ADOcn Dim ADOrs As New Recordset ADOrs.ActiveConnection ADOcn strSQL="Select*from学生基本情况Where学号="+Textl+"'" ADOrs.Open [4] If Not ADOrs.EOF Then MsgBox"学号己经存在,请重新输入I",vbOKOnly,"信息提示" Text1.SetFocus Else strSQL="Insert Into学生基本情况(学号,姓名,籍贯)" strSQL=strSQL+"Values ("W+Text1 +"',"M Text2 +",""Text3 +") [S】_Execute strSQL MsgBox"添加成功",vbOKOnly,."信息提示" End If End Sub Private Sub Command2_Click() Unload Me End Sub 五、编写程序题 1.编写一工资调整程序。若基本工资大于等于3000元,增加工资10%,若小于3000元 大于2000元,则增加工资15%:若小于2000元则增加工资18%。要求在文本框Text1中输入 某职工的基本工资,单击“计算”按钮,在标签框Label1中输出增加后的工资。程序运行界 面如图5所示
9 图 4 程序如下,请补充完整。 Private Sub Form_Load() [1] "Provider=Microsoft.Jet.OLEDB.4.0;Dataource=学生.mdb;Persist Security Info=False" End Sub Private Sub Command1_Click() Dim strSQL As String [ 2] [3] = ADOcn Dim ADOrs As New Recordset ADOrs.ActiveConnection = ADOcn strSQL = "Select * from 学生基本情况 Where 学号= '" + Text1 + " ' " ADOrs.Open [4] If Not ADOrs.EOF Then MsgBox "学号已经存在,请重新输入!", vbOKOnly, "信息提示" Text1.SetFocus Else strSQL = "Insert Into 学生基本情况(学号,姓名,籍贯) " strSQL = strSQL + " Values ( '" + Text1 + " ','" + Text2 + "','" + Text3 + " ')" [5] Execute strSQL MsgBox "添加成功!", vbOKOnly, "信息提示" End If End Sub Private Sub Command2_Click() Unload Me End Sub 五、编写程序题 1.编写一工资调整程序。若基本工资大于等于 3000 元,增加工资 10%,若小于 3000 元 大于 2000 元,则增加工资 15%;若小于 2000 元则增加工资 18%。要求在文本框 Text1 中输入 某职工的基本工资,单击“计算”按钮,在标签框 Label1 中输出增加后的工资。程序运行界 面如图 5 所示

工资调整程序 口回☒ 原工资 2500 增加后的工资 2875 计算 退出 图5 2.编写简单的工资计算程序,要求在Textl、Text2、Text3中分别输入基本工资、奖金、 扣款,单击“计算”按钮(Commandl)后,首先计算“应发工资”(Text4),然后根据“应发工 资”计算个人所得税(Text5),最后计算出实发工资(Text6)。 (1)应发工资=基本工资+奖金-扣款 (2)个人所得税的计算规则假设为: 1)当应发工资在1000元以内部分(含1000元),不扣所得税。 2)当应发工资大于1000,但小于等于4000元时,超过1000元的部分按15%计算所得税。 3)当应发工资大于4000,按20%扣税。 程序运行结果如图6所示。 口工资计算 日▣☒ 基本工资: 4000 奖金: 500 扣款: 300 应发工资: 4200 计算 个人所得税: 840 实发工资: 3360 退出 图6 答案 一、单项选择题 1.B2.D3.D4.C5.B6.B7.D8.B9.A10.C11.B12.D 13.B14.B15.D16.C17.B18.C19.A20.B21.D22.A23.C 10
10 图 5 2.编写简单的工资计算程序,要求在 Text1、Text2、Text3 中分别输入基本工资、奖金、 扣款,单击“计算”按钮(Command1)后,首先计算“应发工资”(Text4),然后根据“应发工 资”计算个人所得税(Text5),最后计算出实发工资(Text6)。 (1)应发工资=基本工资+奖金-扣款 (2)个人所得税的计算规则假设为: 1)当应发工资在 1000 元以内部分(含 1000 元),不扣所得税。 2)当应发工资大于 1000,但小于等于 4000 元时,超过 1000 元的部分按 15%计算所得税。 3)当应发工资大于 4000,按 20%扣税。 程序运行结果如图 6 所示。 图 6 答案 一、单项选择题 1.B 2.D 3.D 4.C 5.B 6.B 7.D 8.B 9.A 10.C 11.B 12.D 13.B 14.B 15.D 16.C 17.B 18.C 19.A 20.B 21.D 22.A 23.C