习题参考答案第1章Visual Basic编程环境与简单程序设计一、选择题二、填空三、问答题1.主要有以下特点:(1)具有面向对象的可视化设计工具。
Visual Basic 6.0提供可视化平台,把Windows界面设计的复杂性封装起来,编程人员不必为界而的设计编写大量的代码。
界面的设计代码是山Visual Basic 6.0自动产生的, 大大提高了编程效率。
(2)事件驱动的编程机制。
在事件驱动的应用程序中,代码是在响应不同的事件时执行不同的代码片段。
事件可以山用户操作或应用程序本身的消息及操作系统或其他应用程序的消息触发。
(3)结构化的程序设计语言。
(4)开放的数据库功能与网络支持。
(5)充分利用Windows资源。
2.主要窗口有:(1)窗体窗口。
(2)工程资源管理器。
(3)属性窗口。
(4)窗体布局窗口。
(5)代码窗口。
它们均可通过Visual Basic 6. 0集成环境中“视图”菜单的相关选项打开;关闭时单. 击各个窗口右上角的“X”即可。
3.工程资源管理器显示当前所打开的工程的信息状态和文件内容。
利用工程资源管理器可以进行与工程相关的管理操作,比如添加、删除文件等。
在工程资源管理器中所能进行的工程管理操作主要有:(1)查看对象:单击该对象,单击工具栏上的“查看对象”按钮,包含该对象的窗体窗口将出现在屏幕上。
(2)查看代码:单击该对象,单击工具栏上的“查看代码”按钮,与该对象相关的代码窗口将被打开。
(3)添加对象:用鼠标指针指向工程名称,单击右键,系统会弹出一个快捷菜单。
在该菜单上选择“添加”选项,稍候出现二级菜单,选择所要添加的对象类型即可。
(4)删除对象:选择要删除的对象,在要删除的对象项上单击右键,在弹出的快捷菜单中选择“删除”即可。
(5)保存对象:当某些文件修改后,要及时保存这些文件。
选择要保存的对象,在要保存的对象项上单击右键,在弹出的快捷菜单中选择“保存”或“另存为”叩可。
4 .工程所可以包含的文件类型为:(1)工程文件(.vbp):跟踪所有对象。
(2)窗体文件(.fun):存储有关窗体的信息。
(3)二进制数据文件(.frx):每个窗体都有一个相应的二进制数据文件,它包含窗体上控件的属性数据。
对含有二进制属性的任何.frx文件都是不可编辑的,这些文件都是由系统自动产生的。
(4)模块文件(.bas):每个标准模块的一个文件,该文件是可选项。
(5)类模块文件(.cis):每个类模块的一-个文件,该文件是可选项。
(6)Active X控件文件(.ocx):包含Active X控件的文件,该文件是可选项。
(7)资源文件(.res):包含无须重新编辑代码便可以改变的位图、字符冷和其他数据, 该文件是可选项。
第2章数据类型、运算符与表达式一、选择题二、填空题zs ,简答题1. (1) False (2) 3.5 (3) 1 (4) 0(5) -1(True) (6) False (7) True(8) 1999-9-30 (9) Sum 1025 (10) SFRT5672. (1) 7 (2) 355 (3) 1255 (4) nnn(5) 5 (6) Y (7) 34 (8) 345erer(9) ” 15.3695 M (10) 12 (11) 19563. (1) Rnd*10 (2) Int (Rnd*12+15)第3章输入输出语句及顺序结构一、选择题二、填空题三、编程题1.参考代码:Private Sub Form_Click()Dim a As SingleDim b As SingleDim c As SingleDim y As Singlea = 5b = 2.5c = 7.8y = (a * b * 3.14) / (a + b * c)Print yEnd Sub2.参考代码如下:Private Sub Form_Click()Dim a As SingleDim b As SingleDim c As SingleDim d As Singlea = VaI(I叩utBox(”请输入第一个数:”))b = Val(InputBox(n请输入第二个数:”))c =Val(I叩utBox(”请输入第三个数:”)) d = Val(InputBox(n请输入第四个数:”)) Print a + b + c + dPrint (a + b+ c + d)/4End Sub第4章常用标准控件一、选择题二、填空题4 5 6Change计算机、等级考试InterVai7 8 9 1DblClick、Listl. Text Timer1000、Tuuu、T line BASIC三、编程题1.设计思路:添加用两个Image控件(Image2> ImageS)分别存放两幅图片。
再添加一个命令按钮command 1 u交换二代码如下:Private Sub Commandl_Click()Picture = Image1.pictureIniagel. picture = lmage2. pictureTm<ige2. picture = pictureEnd Sub2.“添加”按钮为Command!, “删除”按钮为Command2, ”修改”按钮为commands,"修改确定"按钮为command4oOption ExplicitDim a as integerPrivate Sub Commandl_Click()'"添加”按钮Listl. Addltem Textl,将文本框内容加至列表框Textl =…End SubPrivate Sub Command2 Click (),"删除”按钮Listl. Rcmoveltem Listl. Listindex '删除选定的项目End SubPrivate Sub Conunand3_Click ()Textl. text = listl.texta = listl.listindexEnd SubPrivate Sub Command4 Click ()Listl. list(a) = textl.textEnd Sub3.参考程序如下:Private Sub Commandl_Click ()Textl. FontName ="黑体”End SubPrivate Sub Command2 Cl ick ()Textl. ForeColor = RGB(255, 0, 0)End SubPrivate Sub Command3_C1ick()EndEnd Sub4.参考程序如下:Privcite Sub Textl_Change 0Text2.FontSize = 24Text2 = TextlText3.FontSize = 36Text3 = TextlEnd Sub第5章Visual Basic控制结构一、选择题二、填空三、编程题1.参考代码如下:Private Sub Form_Click()Dim a As IntegerI IDim b As Integer Dim c As Integer Dim p As Single Dim s As Singlea = TnputBox C 请输入边长:〃)b = TnputBox C 请输入边长:〃)c = InpulBox C 请输入边长:〃)Do While a > 0 And b > 0 And c > 0Ifa+b>cOra+c>bOrb+c > a Then p = (a + b + c) / 2s = Sqr (p * (p - a) * (p - b) * (p - c)) Print ”三角形的面积为:〃;s Exit Do Elsea = TnputBox C 请输入边长:〃)b = InputBox (〃请输入边长:〃)c = InputBox C 诺输入边长:〃) End If Loop End Sub2. 参考代码如下: Private Sub Form_Click()Dim i As Integei' Dim s As Integer s = 0For i = 1 To 100s = s + i Next Print s End Sub3. 参考代码如下: Private Sub Form_Click()Dim in As Integer Dim n As Integer Dim r As Integer Dim t As Integerm = InputBox C 请输入 m 值:") n = InputBox ("请输入 n 值:〃) If m < n Thent = m in = n n = t End IfDo Wh i1e m Mod n > 0 r = m Mod nIlln = rLoopPrint 〃最大公约数为:〃;nEncl Sub4.参考代码如下:Private Sub Form_Click()Dim i As IntegerDini j As IntegerFor i = 1 To 9For j = 1 To 9 - i Print 〃";NextFor j = 1 To i Print j;NextFor j = i - 1 To 1 Step -1 Print j;NextPri ntNextEnd Sub第6章数组一、选择题二、填空题三、编程1.参考代码如下:Private Sub Form_Click() Dim a(l To 10) As Integer Dini iDim t Print For i As Integer As Integer 〃交换前数组为:〃=1 To 10 a(i) = InputBox(〃 清输入:〃)Print a(i); Next Print For i = 1 To 5 t = a(i) a(i) = a(10 - i + 1) a(10 - i + 1) = t Next Print 〃交换后数组为:〃For i = 1 To 10 Print a(i); Next End Sub2.参考代码如下:Form_Click() To 8) As To 8) As To 8) As Private Sub Dim a (1 Dim b(lDim c (1 Integer Integer Integer Dim i As Integer For i = 1 To 8a(i) = InputBox(,z请输入 a 数组:〃)Next For i = 1 To 8 b(i) = InputBoxC 请输入 b 数组:")Next Print /z第3个数组的值为:〃For i = 1 To 8 c(i) = a(i) + b(i) Print c(i); Next End Sub第7章过程一、选择题二、填空题三、编程题1.参考代码如下:Function max (x As Single, y As Single, z As Single) As Single If x > y Thenmax:=XElsemax :=yEnd IfIf max < z Thenmax:二zEnd IfEnd FunctionFunction in in (x As Single, y As Single, z As Single) As SingleIf x < y Thenmin:二X Elsemin:=y End IfIf min > z Thenmin = zEnd IfEncl FunctionPrivate Sub Form Click()Dim a As SingleDim b As SingleDim c As SingleDim d As SingleDim e As SingleDim f As SingleDim g As Singlea = InputBox (z/请输入:")b = InputBox C请输入:〃)c = InputBox C请输入:”)d = InputBox C请输入:〃)e = InputBox C请输入:〃)f = InputBox C请输入:〃)g = InputBox (/z请输入:〃)Print max (a, b, c) ; min (a, b, c)Print max (max (a, b, c), d, e) ; min (min (a, b, c), d, e)Print max (max (a, b, c), max (d, e, f), g) ; min (min (a, b, c), min(d, e, f), g) End Sub2.参考代码如下:Sub root (a As Integer, b As Integer, c As Integer, xl As Single, x2 As Single, f As Integer) Dim d As Singled = b*b-4*a*cIf d >= 0 Thenxl = (~b + Sqr(d)) / (2 * a)x2 = (~b - Sqr (d)) / (2 * a)Elsef = 1Print 〃方程没有实根!〃End IfEnd SubPrivate Sub Form_Click()Dim a As IntegerDim b As IntegerDim c As IntegerDim xl As SingleDim x2 As SingleDim f As Integerf = 0a = InputBox (z/请输入:〃)b = InputBox (z,请输入:〃)c = InputBox C请输入:〃)Cal 1 root (a, b, c, xl, x2, f)If f = 0 ThenPrint ”方程的根为:〃;xl; x2 End IfEnd Sub3.参考代码如下:Function fun() As SingleDim i As IntegerFor i = 1 To 100S = S + 1 / iNextfun = SEnd FunctionPrivate Sub Form_Click()Print fun()End Sub第8章键盘与鼠标事件过程一、选择题二、填空题第9章菜单程序设计一、选择题二、填空题三、编程题1.各菜单项的属性设置如表9.1所示。