《 Visual basic程序设计教程》林卓然编著 电子工业出版社2004年2月出版 书号:ISBN75053-96528 定价:23元 编者免费提供本教材的课堂教学用的电子教案。需要电子教案 的教师,可从电子工业出版社网站edu. phei. com.cn的“教学资源下 载”区中下载,也可直接与编者联系( Puslzrlazsu. edu.cn)。各章习 题(含单选、多选及填空题答案已放在本教材的附录D中。 《 Visual Basic程序设计教程》 <编程及上机调试>题参考答案 第1章《编程及上机调试》 按要求设置窗体属性 2.在窗体上建立一个标签 Labell。程序代码如下 Private Sub Form Click Labell. Caption="你单击了窗体 End Sub Private Sub Form DblClick Labell. Caption=“你双击了窗体 End Sub 3.在窗体上建立两个文本框Text1(输入数)、Text2(输出数)和一个命令按钮 Commandl。两个文本框的 Text属性均为空。 Private Sub Command1 Click Text2, Text =15 ** x End Sub 第2章《编程及上机调试》 1~3题:按要求完成操作练习 4.在窗体上设置三个命令按钮,其名称分别为 Commandl(“最大化”)、 Command2(“还原”)和 Command3(“最小化”)。程序代码如下 Private Sub Command1 Click 最大化“按钮 Forml WindowState 2 最大化 End sub Private Sub Command2 Click 还原”按钮 Forml WindowState =0 End sub Private Sub Command3 Click 最小化“按钮 Forml WindowState I 最小化 End Sub 在窗体上建立三个文本框Text1(第一个数)、Text2(第二个数)、Text3(计算结果)和一个命令按 钮 Command l(“计算”)。 Private Sub Command1 Click Dim x As single Dim y As singl x= Val(Textl, Text) y Val(Text2 Text) Text3 Text =x * x +y y
1 《Visual Basic 程序设计教程》 <编程及上机调试>题参考答案 第 1 章 《编程及上机调试》 1. 按要求设置窗体属性。 2.在窗体上建立一个标签 Label1。程序代码如下: Private Sub Form_Click() Label1.Caption = "你单击了窗体" End Sub Private Sub Form_DblClick() Label1.Caption = "你双击了窗体" End Sub 3. 在窗体上建立两个文本框 Text1(输入数)、Text2(输出数)和一个命令按钮 Command1。两个文本框的 Text 属性均为空。 Private Sub Command1_Click() Dim x As Single x = Val(Text1.Text) Text2.Text = 15 * x End Sub 第 2 章《编程及上机调试》 1~3 题:按要求完成操作练习。 4.在窗体上设置三个命令按钮,其名称分别为 Command1(“最大化”)、Command2(“还原”)和 Command3(“最小化”)。程序代码如下: Private Sub Command1_Click() '"最大化"按钮 Form1.WindowState = 2 '最大化 End Sub Private Sub Command2_Click() '"还原"按钮 Form1.WindowState = 0 '还原 End Sub Private Sub Command3_Click() '"最小化"按钮 Form1.WindowState = 1 '最小化 End Sub 5.在窗体上建立三个文本框 Text1(第一个数)、Text2(第二个数)、Text3(计算结果)和一个命令按 钮 Command1(“计算”)。 Private Sub Command1_Click() Dim x As Single Dim y As Single x = Val(Text1.Text) y = Val(Text2.Text) Text3.Text = x * x + y * y 《Visual Basic 程序设计教程》 林卓然编著 电子工业出版社 2004 年 2 月出版 书号: ISBN 7-5053-9652-8 定价: 23 元 编者免费提供本教材的课堂教学用的电子教案。需要电子教案 的教师,可从电子工业出版社网站(edu.phei.com.cn)的“教学资源下 载”区中下载,也可直接与编者联系(Puslzr@zsu.edu.cn)。各章习 题(含单选、多选及填空题)答案已放在本教材的附录 D 中
6.在窗体上建立两个文本框Text1(输入一串字符)、Text2(输出结果)和一个命令按钮 Commandl Private Sub Command1 Click Dim x As string x=Left(TextI Text, 1)+ Right (Textl Text, 1) End Sub 第3章《编程及上机调试》 1.在窗体上建立一个文本框 TextI(输λn值)、三个标签 Labell(第一个随机数)、 Label2(第二个随机 数)和 Label3(第三个随机数),以及一个命令按钮 Commandl Private Sub Command1 Click n= Val(Textl. Text) Randomize Int(l+ n* Rnd) Labell. Caption="第一个随机数”+Str(x) x=Int(l +n *k Rnd) abe2. Caption="第二个随机数"+Str(x) Label3. Caption="第三个随机数”+Str(x) nd Sub 2.在窗体上建立了四个文本框 TextI、Text2、Text3和Text4,以及两个命令按钮 Command1(“交换”) (“合并”)。 Private Sub Command1 Click t Text text TextI. Text Text2 Text Text2 Text Text3 Text Text3 Text = t End Sub Private Sub Command2 Click “合并 t Text. Text Text2. Text Text3. Text Text4 Text =t 3.(1)Rnd*9000+1000(2)Str(x)(3)Mid(s,3,1)+Mid(s,2,1)+Left(s,1) 4. Private Sub Cmd1 click b1. Caption="您已下达显示命令 End Sub Private Sub Form Click md l visible true End Sub 5. Private Sub Form KeyPress KeyAscii As Integer) Print"输入字符:";Chr( KeyAscii)," ASCII码为;"; KeyAscii End sub Private Sub Form DblClick End sub 6.产生这三个消息框的相应语句是: 产生第1个消息框:x= MsgBox("在这里显示提示信息",4+0,"请确认") 产生第2个消息框:x= MsgBox("在这里显示″+Chr(13)+“提示信息",3+0,″请确认") 产生第3个消息框:x= MsgBox("在这里显示"tChr(13)+"提示信息",2+16+0,"请确认") 第4章《编程及上机调试 1.在窗体上建立两个文本框 TextI(输入数)及Text2(显示结果),一个命令按钮 Commandl(“判断”)。 2
2 End Sub 6. 在窗体上建立两个文本框 Text1(输入一串字符)、Text2(输出结果)和一个命令按钮 Command1。 Private Sub Command1_Click() Dim x As String x = Left(Text1.Text, 1) + Right(Text1.Text, 1) Text2.Text = x End Sub 第 3 章《编程及上机调试》 1.在窗体上建立一个文本框 Text1(输入 n 值)、三个标签 Label1(第一个随机数)、Label2(第二个随机 数)和 Label3(第三个随机数),以及一个命令按钮 Command1。 Private Sub Command1_Click() n = Val(Text1.Text) Randomize x = Int(1 + n * Rnd) Label1.Caption = "第一个随机数" + Str(x) x = Int(1 + n * Rnd) Label2.Caption = "第二个随机数" + Str(x) x = Int(1 + n * Rnd) Label3.Caption = "第三个随机数" + Str(x) End Sub 2.在窗体上建立了四个文本框 Text1、Text2、Text3 和 Text4,以及两个命令按钮 Command1(“交换”) 和 Command2(“合并”)。 Private Sub Command1_Click() '“交换” t = Text1.Text Text1.Text = Text2.Text Text2.Text = Text3.Text Text3.Text = t End Sub Private Sub Command2_Click() '“合并” t = Text1.Text + Text2.Text + Text3.Text Text4.Text = t End Sub 3. (1) Rnd * 9000 + 1000 (2) Str(x) (3) Mid(s, 3, 1) + Mid(s, 2, 1) + Left(s, 1) 4. Private Sub Cmd1_Click() Lab1.Visible = True Lab1.Caption = "您已下达显示命令" End Sub Private Sub Form_Click() Cmd1.Visible = True End Sub 5. Private Sub Form_KeyPress(KeyAscii As Integer) Show Print "输入字符:"; Chr(KeyAscii), "ASCII 码为;"; KeyAscii End Sub Private Sub Form_DblClick() Cls End Sub 6. 产生这三个消息框的相应语句是: 产生第 1 个消息框:x = MsgBox("在这里显示提示信息", 4 + 0, "请确认") 产生第 2 个消息框:x = MsgBox("在这里显示" + Chr(13) + "提示信息",3 + 0,"请确认") 产生第 3 个消息框:x = MsgBox("在这里显示"+Chr(13)+"提示信息",2 + 16 + 0,"请确认") 第 4 章《编程及上机调试》 1. 在窗体上建立两个文本框 Text1(输入数)及 Text2(显示结果),一个命令按钮 Command1(“判断”)
Private Sub Command1 Click x= Val(Textl Text f x Mod 2=0 Then Text2.Text="偶数 Else消息 Text2.Text="奇数 2.在窗体上建立两个文本框Text1、Text2及Text3,分别代表学号、年级及学生类型,建立一个命 令按钮 Command1(“判断”)。 Private Sub Command1 Click Dim t As string, p As string Mid (Text. Text, 5, 1) Select case t p="博士生 p="硕士生 p="本科生 Case"5 p="专科生 Case Else =“无效学号 End select Text2 Text Left(TextI Text, 2)+9k Text3 te End sub 3.窗体上建立了一个文本框Text1(“输入口令”)和一个命令按钮 Commandl(“检查”)。 Private Sub Command1 Click “检查” Ifx="12345678"Ther MsgBox"欢迎你用机 Else MsgBox"对不起,口令错 TextI set focus Private Sub Form LoadO Textl. MaxLength =8 End sub 4.窗体上建立了两个文本框Text1(输入字符串)及Text2(转换结果),一个命令按钮 Command l(“清 Private Sub Command1 Click “清除” Text2 Text= TextI Set Focus End Sub Private Sub Textl KeyPress(KeyAscii As Integer) Dim s As string I s= Chr(KeyAscii s= CAse(s)
3 Private Sub Command1_Click() '“判断” x = Val(Text1.Text) If x Mod 2 = 0 Then Text2.Text = "偶数" Else 消息 Text2.Text = "奇数" End If End Sub 2. 在窗体上建立两个文本框 Text1、Text2 及 Text3,分别代表学号、年级及学生类型,建立一个命 令按钮 Command1(“判断”)。 Private Sub Command1_Click() Dim t As String, p As String t = Mid(Text1.Text, 5, 1) Select Case t Case "2" p = "博士生" Case "3" p = "硕士生" Case "4" p = "本科生" Case "5" p = "专科生" Case Else p = "无效学号" End Select Text2.Text = Left(Text1.Text, 2) + "级" Text3.Text = p End Sub 3.窗体上建立了一个文本框 Text1(“输入口令”)和一个命令按钮 Command1(“检查”)。 Private Sub Command1_Click() '“检查” x = Text1.Text If x = "12345678" Then MsgBox "欢迎你用机!" Else MsgBox "对不起,口令错" End If Text1.Text = "" Text1.SetFocus End Sub Private Sub Form_Load() Text1.Text = "" Text1.MaxLength = 8 Text1.PasswordChar = "*" End Sub 4.窗体上建立了两个文本框 Text1(输入字符串)及 Text2(转换结果),一个命令按钮 Command1(“清 除”)。 Private Sub Command1_Click() '“清除” Text1.Text = "" Text2.Text = "" Text1.SetFocus End Sub Private Sub Text1_KeyPress(KeyAscii As Integer) Dim s As String * 1 s = Chr(KeyAscii) Select Case s Case "A" To "Z" s = LCase(s) Case "a" To "z" s = UCase(s)
Case else End select xt2 Text Text2 Text +s End Sub 5.分别选择”红”、”绿”、”蓝”复选框后,单击命令按钮 Command 1时,通过RGB函数调配的颜 色作为一个标签的背景色( Back Color Private Sub Command1_Click 0:g=0:b=0 If Check value =1 Then 复选 End if If Check2 value =I Then ”绿”复选框 g=255 f Check value =I Then ”蓝”复选框 End if abell.BackColor rGB(r, g, b) End Sub 6.程序代码如下 Private Sub Form Load LabClk. Caption =0 LabClk. Alignment =1 LabClk BorderStyle LabClk Fontsize 2 LabClk. FontName="黑体 TimClk. Interval =1000 End Sub Private Sub TimcClk TimerO LabClk. Caption=Val(LabClk Caption)+1 End Sub 7.在窗体上建立了两个文本框 TextI及Text2,两个命令按钮 Commandl及 Command2(“复制”及“粘 贴”)。在文本框Text1中输入文本“复制文本的演示程序” Private Sub Command1 Click “复制”按钮 Command2 Enabled True End Sub Private Sub Command2 Click “粘贴”按钮 Text2. Text Text seltext Commandl, Enabled False Command2 Enabled Fal End sub Private Sub Form Load Commandl Enabled= False Command2 Enabled False End Sub Private Sub Text1 MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single) If Textl. SelLength >0 Then Commandl Enabled True End Sub 第5章《编程及上机调试》 和数为:1.21。程序代码如下 Private Sub Form Loado 0 For k =1 To l(
4 Case Else s = "*" End Select Text2.Text = Text2.Text + s End Sub 5. 分别选择”红”、 ”绿”、 ”蓝”复选框后,单击命令按钮 Command1 时,通过 RGB 函数调配的颜 色作为一个标签的背景色(BackColor)。 Private Sub Command1_Click() r = 0: g = 0: b = 0 If Check1.Value = 1 Then '”红”复选框 r = 255 End If If Check2.Value = 1 Then '”绿”复选框 g = 255 End If If Check3.Value = 1 Then '”蓝”复选框 b = 255 End If Label1.BackColor = RGB(r, g, b) End Sub 6.程序代码如下: Private Sub Form_Load() LabClk.Caption = "0" LabClk.Alignment = 1 LabClk.BorderStyle = 1 LabClk.FontSize = 22 LabClk.FontName = "黑体" TimClk.Interval = 1000 End Sub Private Sub TimClk_Timer() LabClk.Caption = Val(LabClk.Caption) + 1 End Sub 7. 在窗体上建立了两个文本框 Text1 及 Text2,两个命令按钮 Command1 及 Command2(“复制”及“粘 贴”)。在文本框 Text1 中输入文本“复制文本的演示程序”。 Private Sub Command1_Click() '“复制”按钮 Command1.Enabled = True Command2.Enabled = True End Sub Private Sub Command2_Click() '“粘贴”按钮 Text2.Text = Text1.SelText Command1.Enabled = False Command2.Enabled = False End Sub Private Sub Form_Load() Command1.Enabled = False Command2.Enabled = False End Sub Private Sub Text1_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single) If Text1.SelLength > 0 Then Command1.Enabled = True End If End Sub 第 5 章《编程及上机调试》 1. 和数为:1.21。程序代码如下: Private Sub Form_Load() Show s = 0 For k = 1 To 100
kexr8=s+1/(1+k*4) Print s=": Format(s, ## 00") 2.程序代码如下: Private Sub Form Load Dim i As Integer, a As Integer, b As Integer, c As Integer a= Int(i/ 100) b=Int((i-100*a)/10) i-100 10*b If a a a+ b*b*b+ c*=c=i then End if End sub 3.在窗体上建立一个文本框Text1(初始值)、一个列表框List1(显示结果)和一个命令按钮 Comd 1(“查找”)。 Private Sub Comd1 Click “查找” Dim n As Integer n= Val(TextI Text) List. Clear: k=0 Do While k 99 (n List. Additem n End if 4.在窗体上建立一个列表框Lt1和一个“显示表项”命令按钮 Command I。程序代码如下: Private Sub Command1 click 显示表项"按钮单击事件 Fontsize = I For i =0 To list. ListCount -1 逐项判断 If Listl Selected(i)Then 真时为选中 Print Listl List(i) (1)KeyPress (2)Combol List(k) (3)Combol AddItem 6.程序代码如下: Private Sub Form Loado Dim a As single, xno As Single, xnl As Single a=Val( InputBox("请输入一个正数")) xnI =a xnl =(xn0+ a/ xn0)/2 Loop While Abs(xn0-xn1)>=0.00001 Print a;"的平方根为";xnl End sub 第6章《编程及上机调试》 程序代码如下 Private Sub Form load Dim a(6, 6)As Integer
5 s = s + 1 / (1 + k * 4) Next k Print "s="; Format(s, "##.00") End Sub 2. 程序代码如下: Private Sub Form_Load() Dim i As Integer, a As Integer, b As Integer, c As Integer Show For i = 100 To 999 a = Int(i / 100) b = Int((i - 100 * a) / 10) c = i - 100 * a - 10 * b If a * a * a + b * b * b + c * c * c = i Then Print i End If Next i End Sub 3. 在窗体上建立一个文本框 Text1(初始值)、一个列表框 List1(显示结果)和一个命令按钮 Comd1(“查找”)。 Private Sub Comd1_Click() '“查找” Dim n As Integer n = Val(Text1.Text) List1.Clear:k = 0 Do While k <= 99 If Not (n Mod 7 = 0) Then List1.AddItem n k = k + 1 End If n = n + 1 Loop End Sub 4.在窗体上建立一个列表框 List1 和一个“显示表项”命令按钮 Command1。程序代码如下: Private Sub Command1_click() '"显示表项"按钮单击事件 FontSize = 12 Cls For i = 0 To List1.ListCount - 1 '逐项判断 If List1.Selected(i) Then '真时为选中 Print List1.List(i) End If Next i End Sub 5.(1) KeyPress (2) Combo1.List(k) (3) Combo1.AddItem 6.程序代码如下: Private Sub Form_Load() Show Dim a As Single, xn0 As Single, xn1 As Single a = Val(InputBox("请输入一个正数")) xn1 = a Do xn0 = xn1 xn1 = (xn0 + a / xn0) / 2 Loop While Abs(xn0 - xn1) >= 0.00001 Print a; "的平方根为"; xn1 End Sub 第 6 章《编程及上机调试》 1. 程序代码如下: Private Sub Form_Load() Dim a(6, 6) As Integer