版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 VB语言程序设计教材 林卓然编著 VB程序设计 习题 参 考答案 第1章习题 、单选题 1. D 2. B 3 .C 4 .A5. C6. A 7. A 8. B 9 .C 10 .(1)A(2)B 、多选题 1. ACDE2 .BCDE 3 .CD 4. CE 、填空题 1事件驱动2 解释,编译 3 .设计,运行,中断 4.属性,方法,事件 5. Command2_ _Click 6. 中央,代码 7. MyForm.frm 8. (1)Cmd1_Click() (2)Print VB 语言程序设计 编程及上机调试 1. 按要求设置窗体属性 2. 在窗体上建立一个标签Labell。程序代码
2、如下: Private Sub Form_Click() Labell.Caption =你单击了窗体 End Sub Private Sub Form_DblClick() Label1.Caption = 你双击了窗体 End Sub 3. 在窗体上建立两个文本框Text1(输入数)、Text2(输出数)和一个命令按钮 Command。两个文本框的 Text属性均为空。 Private Sub Command1_Click() Dim x As Single x = Val(Text1.Text) Text2.Text = 15 * x End Sub 第2章习题 、单选题 1. (1)
3、Sin(50*3.14159/180) (2+x*y)/(2- y*y) 1 .D,D2 .A, C 3 . A 4 . B 5 . B6 7 . C8 .D 9 .B 10 .B11 .A12. A 13. B14 .A 15 .B 16 .A17 .B 、多选题 1 . BD2. CD 3 .AC 4. AD 、填空题 (3) a*a- 3*a*b/(3+a) 2. Int(50+6*Rnd) 3. (1)138(2)3(3)214 (4) xA(3/8)+Sqr(y*y+4*a*a/(x+yA3) (4) inchina (5)70(6) 45 (7)0 4.系统管理数据库” 编程及上机
4、调试 13题:按要求完成操作练习。 4. 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(计算”) Pr
5、ivate 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 End Sub 6. 在窗体上建立两个文本框Text1(输入一串字符)、Text2(输出结果)和一个命令按钮 Command。 Private Sub Command1_Click() Dim x As String x = Left (T ext1.Text, 1) + Right (T ext1.Text, 1) Text2.Text = x
6、 End Sub 第3章习题 、单选题 1 . C 2 . B 3 .D4 .D5 .B6 .C 7. B 8 . D 9 .D10 .A11 .A 12 .C 13. C 14. B 15 .(1)A (2)C 16 .A 17 .B 18. (1)D (2)B (3)C 19 .D .、多选题 1 . AC 2 . AC 3 .ABCF 【、填空题 1. $000,124 2 .Label1.Caption=a*b= 3. Height , Width 4. 2 5 .Text1.SetFocus 6. Multiline, ScrollBars, 2 7 .编程技术,程序设计 8 . P
7、rivate Sub Text2_ _Change() 当文本框 Text2中的文本内容发生变动时,扌 执行该 事件过 Label1.Caption=Text1.Text End Sub Private Sub Text1_GotFocus() Text1.SelStart = 0 把文本框Text1中的文本内容作为标签Label1的标题 当文本框Text1获得焦点时,执行该事件过程 选定文本框Text1中的所有文本内容 Text1.SelLength=Len (Text1.Text) End Sub 编程及上机调试 1. 在窗体上建立一个文本框 Text1(输入n值)、三个标签Label1(
8、第一个随机数)、Label2(第二个随机 数)和Label3(第三个随机数),以及一个命令按钮 Command。 Private Sub Command1_Click() n = Val(Text1.Text) Randomize x = Int(1 + n * Rnd) Label1.Caption = x = Int(1 + n * Rnd) Label2.Caption = x = Int(1 + n * Rnd) Label3.Caption = End Sub 2在窗体上建立了四个文本框 和 Command2“( 合并” ) 。 第一个随机数 第二个随机数 第三个随机数 + Str(
9、x) + Str(x) + Str(x) Text1 、Text2 、Text3 和 Text4 ,以及一个命令按钮 Command1“( 交换” ) 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 * 900
10、0 + 1000 (2) Str(x) 4. Private Sub Command1_Click() Text1.Left = 0 End Sub Private Sub Command2_Click() Text1.Left = Form1.Width - Text1.Width End Sub Private Sub Command3_Click() Text1.Left = (Form1.Width - Text1.Width) / 2 End Sub 5. Private Sub Cmd1_Click() Lab1.Visible = True Lab1.Caption = End
11、Sub Private Sub Form_Click() Cmd1.Visible = True End Sub 6. Private Sub Form_KeyPress(KeyAscii As Integer) Show Print End Sub 交换” 合并” (3) 您已下达显示命令 输入字符: ; Chr(KeyAscii), ASCII Private Sub Form_DblClick() Cls End Sub 7. 产生这三个消息框的相应语句是: 产生第 1 个消息框: 产生第 2 个消息框: 产生第 3 个消息框: 、单选题 1C2 A 7D8 B 、多选题 1 ABCFG
12、HJ Mid(s, 3, 1) + Mid(s, 2, 1) + Left(s, 1) 往左 往右 居中 码为 ; KeyAscii x = MsgBox( 在这里显示提示信息 , 4 + 0, 请确认 ) x = MsgBox( 在这里显示 + Chr(13) + 提示信息 ,3 + 0, 请确认 ) x = MsgBox( 在这里显示 +Chr(13)+ 提示信息 ,2 + 16 + 0, 请确认 ) 第 4 章习题 2 BE 4 C 5. B 6. A 10 (1)D (2)A (3)B 3 CD4. CDE 5. AE 三、填空题 1. (S And (A=18 And A v=20)
13、 And H=1.65) Or (Not S And (A=16 And Age=1.60) 2. 600003. (1) 0 To 9(2) a To z,A To Z(3) Else 4. (1)6 (2)-2 (3)2 5. Select Case x Case Is = 0 y = 4 Case Is 10 y = 0 Case Is 15 y = 1 Case Is 20 y = 2 Case Is 100) And (x Mod 5=0)(2) 0 (4) Text1.SelText (3) Len( Text1.Text) 编程及上机调试 1. 在窗体上建立两个文本框Text1(
14、输入数)及Text2(显示结果),一个命令按钮 Command“判断”) “判断” 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,用于显示结果。 Private Sub Form_Load() x = Val(lnputBox( Select Case x Case Is = 0 Text1.Text = Case Is = 1 Text1.Text = Ca
15、se Is = 2 Text1.Text = Case Is = 3 Text1.Text = Case Is = 4 Text1.Text = Case Is = 5 Text1.Text = Case Is = 6 Text1.Text = Case Else Text1.Text = End Select End Sub 请输入星期几(06) 星期日(Sunday) 星期一 (Monday) 星期二仃uesday) 星期三(Wednesday) 星期四(Tlhursday) 星期五(Friday) 星期六(Saturday) 输入错误 3.窗体上建立了一个文本框 Text1(输入口令”)
16、和一个命令按钮 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() “检查” Commandl时,通过RGB函数调配 或 Else (1)C , (2)B4 B 9. B10. B 5 C6 A Text1.Text = Text1.MaxLength = 8 Text1.Passw
17、ordChar = * 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) Ca
18、se a To z s = UCase(s) Case Else s = * End Select Text2.Text = Text2.Text + s End Sub 5 分别选择”红”、 ”绿”、 ”蓝”复选框后,单击命令按钮 的颜色作为一个标签的背景色( 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.Va
19、lue = 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.C
20、aption) + 1 End Sub 7 (1) Chr(KeyAscii)(2) ElseIf Chr(KeyAscii) (3) CheC = CheC - 1(4) CheC (5) Is 0 第 5 章习题 、单选题 1 A 2. B 3 7(1)B , (2)C , (3)B8. B 、填空题 1 (1)4 次, n=13 (2)3 次, n=8 (3)3 次, n=27 (4)3 次, n=10 (5)1 次, n=12 2(1) Len(s) (2) Mid(s, k, 1) (3) c + t (4) Text2.Text 3(1) t = 1 (2) n = n + 1 (
21、3) t = t * 2 4. 0 5 . Text 6. 下拉列表框 7. AddItem ,RemoveItem 或 Clear 8 (1)ItemA (2) ItemD (3) ItemD (4) ItemA 9(1) Mid(x, p + 3) (2) p + 4 (3) InStr(p, x, 123) 编程及上机调试 1. 和数为: 1.21 。程序代码如下: Private Sub Form_Load() Show s = 0 For k = 1 To 100 s = s + 1 / (1 + k * 4) Next k Print s End Sub 2. 程序代码如下: Pr
22、ivate 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( 显示结果 ) 和
23、一个命令按钮 Comd1“( 查找” )。 Private Sub Comd1_Click() “查找” Dim n As Integer n = Val(Text1.Text) List1.Clear:k = 0 Do While k = A And t = 0.00001 Print a; 的平方根为 ; xn1 End Sub 第 6 章习题 一、单选题 1. D 2. A3 . (1)B , (2)B4. C 5. C 6. A 7. (1)C (2)B (3)A (4)B (5)D 二、多选题 1. AD2. CD 三、填空题 1. 二 , 12; 1, 3; -1, 22.0 1
24、2 3 2222 2101 4 444 3. Name, Index 4. (1) 0 To Index (2)Val(Text1(k).Text) 5. (1) i+1 To k (2) s(i) s(j) (3) s(i)s(i-1)(4) h = h+1 6. (1) ReDim a(1 To n + 1)(2) a(K + 1) = a(K) (3) a(p) 编程及上机调试 1. 程序代码如下: Private Sub Form_Load() Show Dim a(100) As Single n = Val(InputBox( 输入个数 n) Print 处理前数据 : For k
25、 = 1 To n a(k) = Val(InputBox(请输入第 Next k Print M = Int(n / 2) For k = 1 To M h = n - k + 1 t = a(h):a(h) = a(k):a(k) = t Next k Print 处理的结果 : For k = 1 To n Print a(k); Next k End Sub 2. 程序代码如下: Private Sub Form_Load() Dim a(6, 6) As Integer Show For i = 1 To 6 For j = 1 To 6 Select Case i Case Is
26、j a(i, j) = 2 Case Is = j a(i, j) = 0 End Select Print a(i, j); Next j Print Next i For i = 1 To 6 t = a(1, i):a(1, i) = a(6, i):a(6, i) = t Next i Print: Print For i = 1 To 6 For j = 1 To 6 Print a(i, j); Next j Print Next i End Sub 程序代 3在窗体上建立两个列表框List1( 处理前数据 ) 和 List2( 处理后数据 ) ,以及标签 Label1 码如下:
27、Private Sub Form_Load() Dim a(100) As Integer, b(100) As Integer Randomize n = 100 For i = 1 To n 输入数组 a 的 n 个元素 x = Int(20 * Rnd) List1.AddItem x a(i) = x Next i k = 0 For i = 1 To n 删除零元素 If a(i) 0 Then k = k + 1 : b(k) = a(i) : List2.AddItem b(k) End If Next i Label1.Caption = 数组中零元素个数: + Str(n -
28、 k) End Sub 4(1) g(x - 10) + 1 (2) n - 1 (3) g(t) =16 (2) n16 (3) Mid(ch, r+1, 1) 6. D 第 7 章习题 编程及上机调试 1. 在窗体上建立四个文本框Textl和一个命令按钮 Commani(检验”)。文本框 TextlText3用于 输入, Text4 用于输出结果。 Private Sub Command1_Click() Dim a As String, b As String, c As String a = Trim(Text1.Text) b = Trim(Text2.Text) c = Trim(
29、Text3.Text) If che(a) And che(b) And che(c) Then Text4.Text = Val(a) + Val(b) + Val(c) Else Text4.Text = 存在非数字字符 End If End Sub Function che(x As String) As Boolean 若存在非数字字符,函数值为假 che = True For k = 1 To Len(x) s = Mid(x, k, 1) If s 9 Then che = False Exit For End If Next k End Function 2. 在窗体上建立七个文
30、本框Textl Text7和一个命令按钮 Command 1f比较”)。Textl Text6用于 输入, Text7 用于输出结果。 Private Sub Command1_Click() a = Val(Text1.Text):b = Val(Text2.Text):c = Val(Text3.Text) d = Val(Text4.Text):e = Val(Text5.Text):f = Val(Text6.Text) Call max(a, b, c, m) Call max(m, d, e, m) Call max(m, f, f, m) Text7.Text = m End S
31、ub Sub max(x, y, z, m)标准模块文件 If x y Then m = x Else m = y End If If m z Then m = z End If End Sub 3. (1) s (2) Mid(s, p+1) (3) n 4. 程序代码如下: Private Sub Form_Load() Dim x As Single, n As Integer, y As Double x = InputBox(x=, n = InputBox(n=, y = Power(x, n) 求X的n次方) 求 X 的 n 次方 ) Show Print x; 的 ; n; E
32、nd Sub 次方 =; Format(y, #,#.#) Function Power(x As Single, n As Integer) As Double If n 1 Then Power = Power(x, n - 1) * x Else Power = x End If End Function 5在窗体上设置三个窗体 Form1Form3Form1中建立了两个文本框 Text1( “用户名”)和Text2( “密 码”),以及命令按钮 Command 1f判断”)。Form2中建立了一个文本框 Text1(其Text属性值为欢迎你 使用本系统”)和命令按钮Command 1f
33、返回”)。Form3中建立了一个文本框 Text1(其Text属性值为对 不起,请向管理员查询” ) 和命令按钮 Command1“( 退出” )。 Dim n As Integer Private Sub Command1_Click()窗体 Form1 的“判断” usern = Trim(Text1.Text):passw = Trim(Text2.Text) If usern = username And passw = password Then Form1.Hide Form2.Show Else n = n + 1:Text1.SetFocus If n = 3 Then For
34、m1.Hide Form3.Show End If End If Text1.Text = :Text2.Text = End Sub Private Sub Form_Activate() Text1.Text = :Text2.Text = Text1.SetFocus End Sub Private Sub Command1_Click()窗体 Form2 的“返回” Form2.Hide Form1.Show End Sub Private Sub Command1_Click()窗体 Form3 的“退出” Unload Form1 Unload Form2 Unload Form3
35、 End End Sub 6. (1) Form1 窗体模块程序代码: Private Sub Form_Load() Randomize End Sub Private Sub Command1_Click() Dim s As String s = For i = 1 To 10 a(i) = Int(11 + 90 * Rnd) s = s + Str(a(i) + , Next i Text1.Text = Left(s, Len(s) - 1) End Sub Private Sub Command2_Click() Text2.Text = Max() End Sub Privat
36、e Sub Command3_Click() Form1.Hide Form2.Show End Sub Private Sub Command4_Click() Unload Form1 Unload Form2 End End Sub (2) Form2 窗体模块程序代码: Private Sub Command1_Click() Dim t As String Call Sort(t) Text1.Text = t End Sub Private Sub Command2_Click() Form2.Hide Form1.Show End Sub (3) 标准模块程序代码: Public
37、 a(1 To 10) As Single Function Max() As Single Dim m As Single m = a(1) For i = 2 To 10 If m a(j) Then t = a(i): a(i) = a(j): a(j) = t End If Next j s = s + Str(a(i) + , Next i s = s + Str(a(10) End Sub 生成随机数 求最大数 打开排序窗口 隐藏主窗体 显示“排序”窗体 结束 隐藏主窗体 显示“排序”窗体 排序” “返回” 隐藏“排序”窗体 显示主窗体 求最大值 排序 第 8 章习题 、单选题 1
38、. B2. D3 7. A8. (1)D (2)D9. B 、填空题 D 4 A5. B 6. B 1. 随机存取方式2. Get, Put 3. (1) Open StData1.txt For Output As #1 (2) Write #1, StNo, StMb(3) Close #1 4. (1) Open StData1.txt For Input As #1 (2) EOF(1) (3) Input #1, StNo, StMb 5 (1)13 (2)Text1.Text = 9999 (3)Text1.Text (4) Stno(num), Text1.Text 6 (1)n
39、um + 1(2)Input (3)num (5) Stno(num) 编程及上机调试 1. 程序代码如下: Dim d(1 To 20) As Integer Private Sub Command1_Click() 产生随机数 For i = 1 To 20 d(i) = Int(1 + 99 * Rnd) List1.AddItem d(i) Next i End Sub Private Sub Command2_Click() 保存 Open MyFile3.txt For Output As #1 For i = 1 To 20 Write #1, d(i) Next i Close
40、 #1 End Sub Private Sub Command3_Click() 读出 Open MyFile3.txt For Input As #1 Do While Not EOF(1) Input #1, x List2.AddItem x Loop Close #1 End Sub Private Sub Command4_Click()结束 End End Sub 2 本程序的用户界面和程序代码较为复杂,请见具体程序文件。 第 9 章习题 单选题 1B2 D 3 D 4 B 5. A 6. A 编程及上机调试 1. 程序代码如下: Private Sub Form_load() D
41、im x(3) As Single, y As Single On Error GoTo errln y = 2 / 0 x(4) = 1 MsgBox ( 终止程序的运行 ) Unload Me End errln: Select Case Err.Number Case 11 MsgBox (除数为 0( 错误码为 Resume Next Case 9 以后出错时转移到 errln 产生 除数为 0 的错误 产生 下标越界 的错误 卸载窗体 标号 除数为 0 的错误码为 11 11) ,跳过该错误 ) 返回 下标越界 的错误码为 9 MsgBox ( Resume Next Case El
42、se MsgBox ( For j = 1 To 2 * i - 1 If j 9 Then k = k + 7 Print Chr(k + 48); Next j Next i End Sub 3(1) n = n + 1(2) d(1, j) = d(3, j)(3) d(i, 2) = d(i, 4) (4) i = j Or i + j = 5(5) d(i, j) = d(i, j) + 1 (6) n = 0 (7) Text1.Text 第 10 章习题 、单选题 1. C 2. (1)A (2)C 3 D4 C 7. (1)A (2)D 8. A 12. D 9. B 10.
43、B 11. A 5. A 6. D 、填空题 1. (1)Change (2)Value (3)Scroll (4)Value 2. (1) P1.Picture (2) P2.Picture (3) P2.Picture = P3.Picture 3. 菜单编辑器,顶; PopUpMenu 4 (1) Button.Index (3) BackColor = RGB(0, 255, 0) 5. (1) Picture1 (2) X= + Str(X) (2) BackColor = RGB(255, 0, 0) (4) BackColor = RGB(0, 0, 255) (3) Y= + Str(Y) 7. Action, 4, ShowFont HScroll1 和一个文本框 Text1 。程序代码如下: 6. DragMode, 1; 0 编程及上机调试 1在窗体上建立一个水平滚动条 Private Sub
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2030新能源汽车电池材料创新投资机会研究报告
- 2025-2030新能源汽车电池开发市场分析及行业盈利模式与商业投资指南
- 2025-2030新能源汽车电机控制器技术研发与电动摩托车市场竞争力评估研究报告
- 2025-2030新能源汽车热管理器件领域市场态势考量及新机布局与投资企划报告
- 2026年广东省汕头市名校高三高考全真模拟卷(四五六七)数学试题含解析
- 湖南省怀化市中方一中2025-2026学年高三下学期4月暑期摸底数学试题含解析
- 2026年湖南省宁乡一中等部分中学高三高考一模试卷数学试题含解析
- 2026年云南省楚雄州高三下学期期末练习数学试题含解析
- 2026届河北省承德一中高三3月联合考试数学试题含解析
- 山东省阳谷县二中2025-2026学年高三5月高考模拟考试生物试题含解析
- 湖北省圆创高中名校联盟2026届高三2月第三次联合测评生物试卷(含答案解析)
- 2026年赣州职业技术学院单招职业技能考试备考试题附答案详解
- 雇佣老人看门协议书
- 赠与财物协议书模板
- 高一年级英语上册阅读理解专项练习及答案(50篇)
- 颅内肿瘤放疗护理管理
- 低温环境透水混凝土施工工艺方案
- 2025年全国中级经济师考试真题卷含答案经济基础知识
- 锻造加热工作业指导书
- 2025年跆拳道教练职业水平测评试题及答案解析
- 头颈部肿瘤放疗者营养与支持治疗专家共识
评论
0/150
提交评论