vb课后练习答案习题解答 (1)
大学VB课后习题参考答案
习题1一.单项选择题(要求在四个备选答案中选出一个正确答案)1.Visual Basic是一种( D )的可视化程序设计语言。
A.面向机器 B.面向过程 C.面向问题 D.面向对象2.在VB中,下面被称为对象的是( C )A. 窗体B.控件C. 窗体和控件D. 窗体、控件、属性3.以下说法正确的是( A )A.对象的可见性可设为1或0B.标题的属性值可设为任何文本C.如果属性的值不设置,默认为空D.属性窗口中属性只能按字母顺序排列4.为了在属性窗口中设置窗体的属性,预先要执行的操作是( A )。
A.单击窗体上没有控件对象的地方 B.单击任一个控件对象C.双击任一个控件对象 D.双击窗体上没有控件对象的地方5.要设置窗体上各控件的属性,可在( C )中进行。
A.窗体布局窗口 B.工程资源管理器窗口C.属性窗口 D.窗体窗口6.在代码窗口中,当从对象框中选定了某一对象后,在( A )中会列出适用该对象的事件。
A.过程框 B.属性窗口 C.工具箱 D.工具栏7.创建一个简单的应用程序,该程序只有一个窗体,则该工程至少有( B )个文件需要保存。
A.1 B.2 C.3 D.48.程序运行中用鼠标双击当前窗体时,会触发窗体的( C )事件。
A.Load B.Unload C.DblClick D.KeyPress9.在Visual Basic 6.0集成开发环境中,可以( D )。
A.编辑、调试、运行程序,但不能生成可执行程序B.编辑、运行程序,生成可执行程序,但不能调试程序C.编辑、调试程序,生成可执行程序,但不能运行程序D.编辑、调试、运行程序,并能生成可执行程序10.以下叙述正确的是( C )。
A.用属性窗口只能设置窗体的属性B.用属性窗口只能设置工具箱中标准控件的属性C.用属性窗口可以设置窗体和控件的属性D.用属性窗口可以设置任何对象的属性11.在VB程序运行期间,若改变窗体大小,则自动触发的窗体事件是( B )A. ClickB. ResizeC. LoadD. Unload12.以下为窗体文件扩展名的是( C )A. .basB. .clsC. .frmD. .ers13.能确定控件尺寸的是( A )A.Width和HeightB.Top和LeftC. Width或HeightD.Top或Left二. 多项选择题(要求在五个备选答案中选出多个正确答案)1.下列论述中,正确的是( ACDE )。
vb练习题及答案
vb练习题及答案VB练习题及答案VB(Visual Basic)是一种广泛应用于Windows操作系统的编程语言,它以其简单易学的特点受到了许多初学者和专业开发者的青睐。
为了帮助大家更好地掌握VB编程,下面将提供一些VB练习题及其答案,希望能对大家有所帮助。
练习题一:计算器程序编写一个VB程序,实现一个简单的计算器功能。
要求用户输入两个数字和一个操作符(+、-、*、/),然后根据操作符进行相应的计算,并输出结果。
解答:```vbPrivate Sub btnCalculate_Click(sender As Object, e As EventArgs) Handles btnCalculate.ClickDim num1 As Double = CDbl(txtNum1.Text)Dim num2 As Double = CDbl(txtNum2.Text)Dim operator As String = cmbOperator.SelectedItem.ToString()Dim result As DoubleSelect Case operatorCase "+"result = num1 + num2Case "-"result = num1 - num2Case "*"result = num1 * num2Case "/"result = num1 / num2End SelectlblResult.Text = "Result: " & result.ToString()End Sub```练习题二:学生成绩管理系统编写一个VB程序,实现一个简单的学生成绩管理系统。
要求用户输入学生的姓名和成绩,然后将其保存到数组中。
用户可以通过输入姓名来查询学生的成绩。
解答:```vbPrivate Structure StudentPublic Name As StringPublic Score As DoubleEnd StructurePrivate students() As StudentPrivate Sub btnAdd_Click(sender As Object, e As EventArgs) Handles btnAdd.ClickDim newStudent As Student = txtName.TextnewStudent.Score = CDbl(txtScore.Text)ReDim Preserve students(students.Length)students(students.Length - 1) = newStudenttxtName.Text = ""txtScore.Text = ""End SubPrivate Sub btnSearch_Click(sender As Object, e As EventArgs) Handles btnSearch.ClickDim searchName As String = txtSearchName.TextDim found As Boolean = FalseFor Each student As Student In studentsIf = searchName ThenlblSearchResult.Text = "Score: " & student.Score.ToString()found = TrueExit ForEnd IfNextIf Not found ThenlblSearchResult.Text = "Student not found."End IfEnd Sub```练习题三:简单的文本编辑器编写一个VB程序,实现一个简单的文本编辑器功能。
VB程序设计教程课后参考答案概要
VB程序设计教程课后参考答案习题一一、填空题1.对象、事件驱动2.窗体、控件3.属性4.属性窗口、编程设置5.事件过程6.对象名、下划线、事件名7.Form_click8.Print form1.print “我的VB”9.主窗口、属性、工具箱、代码、窗体、工程资源管理10.菜单、快捷键二、选择题1.C 2. A 3. B 4. B 5. D 6. B C 7. A 三、简答题(略)习题二一、选择题1. D2. C3. C4. B5. C6. B7. C8. B 9. A 10. B 11. B 12. C 13. D 14. B15. A 16. A 17. A 18. A 19. B 20. C 21. A22. B 23. B 24. A 25. C 26. A 27. B 28. B29. C 30. B 31. D 32. D 33. C二、填空题1.Controlbox、Maxbutton、Minbutton2.Multiline TRUE3.******4.单文档界面(SDI)多文档界面(MDI)5.窗体显示6.Passwordchar7._change()三、编程题(略)习题三一、基础知识题(略)二、填空题1.整型、长整型、单精度、双精度2.(x mod 10)*10+x\103.Sin(3.14*15/180)+sqr(x+exp(3))/abs(x-y)-log(3*x)4.(a+b)/(1/(c+5)-c*d/2)5.X mod 5=0 or x mod 9=06.False7.-4、3、-3、3、-4、48.CDEF10.TRUE11.变量、属性12.‘_ :13.(略)14.“”#15.Public、通用/模块、Dim、static、private16.+ 、&、+17.Now() 、time()、日期18.Inputbox()、字符串、val()19.Msgbox()三、选择题1.B 2. C 3. A 4. B D此题有误 5. B 6. A7. D 8. B 9. B 10. C 11. D 12. B13. C 14. B 15. A 16. C 17.A 18. D19. A 20. D 21. A 22. C 23. C 24. D25. A 26. D 27. D 28. B 29. C 30. B31. C 32. B 33. C D此题有误34. C 35. A36. D 37. C 38. A 39. B 40. A 41. C42. C 43. D 44. C 45. D 46. A四、编程题1.Option ExplicitPrivate Sub Command1_Click()Dim a%, b%, c%, delta%Dim x1#, x2#, x#a = Val(InputBox("please input data to a:", "info", 1))b = Val(InputBox("please input data to b:", "info", 1))c = Val(InputBox("please input data to c:", "info", 1))If a = 0 And b <> 0 Thenx = -c / bPrint "所构成的方程是:" & b & "x" & "+" & c & "=0"Print "该一元一次方程的根是:", xEnd IfIf a = 0 And b = 0 ThenPrint "很抱歉,不能构成合法的方程!"End IfIf a <> 0 Thendelta = b * b - 4 * a * cIf delta >= 0 Thenx1 = (-b + Sqr(delta)) / (2 * a)x2 = (-b - Sqr(delta)) / (2 * a)Print "所构成的方程是:" & a & "x2" & "+" & b & "x" & "+" & c & "=0"Print "该方程的根是:"Print "第一个根是:", x1Print "第二个根是:", x2Else2Print "该方程有两个虚根:"Print "第一个虚根是:" & -b / (2 * a) & "+" & Sqr(Abs(delta)) / (2 * a) & "i"Print "第二个虚根是:" & -b / (2 * a) & "-" & Sqr(Abs(delta)) / (2 * a) & "i" End IfEnd IfEnd Sub2.Option ExplicitPrivate Sub Command1_Click()Dim i%, s%s = 0For i = 1 To 99 Step 2s = s + iNextPrint sEnd Sub3.Option ExplicitPrivate Sub Command1_Click()Dim i%Dim s#s = 0For i = 1 To 100s = s + 1 / i * (-1) ^ (i + 1)NextPrint sEnd Sub4.Option ExplicitPrivate Sub Command1_Click()Dim i%, n%Dim t#, s#n = Val(InputBox("please input data:", "info", 5))s = 0t = 1For i = 1 To nt = t * is = s + tNextPrint sEnd Sub5.Option ExplicitPrivate Sub Command1_Click()Dim a%, b%, c%Dim p#, s#a = Val(InputBox("please input data to a:", "info", 3))b = Val(InputBox("please input data to b:", "info", 4))c = Val(InputBox("please input data to c:", "info", 5))If (a + b > c And Abs(a - b) < c) Or (a + c > b And Abs(a - c) < b) Or ((b + c) > a And Abs(b - c) < a) Thenp = (a + b + c) / 2s = Sqr(p * (p - a) * (p - b) * (p - c))Print "三角形的面积是:" & sElsePrint "很抱歉,不能构成合法的△三角形!"End IfEnd Sub6.Option ExplicitPrivate Sub Command1_Click()Dim ji%, tu%For ji = 1 To 27For tu = 1 To 27If ji * 2 + tu * 4 = 78 And ji + tu = 27 ThenPrint "鸡的个数是:" & jiPrint "兔的个数是:" & tuEnd IfNextNextEnd Sub7.Option ExplicitPrivate Sub Command1_Click()Dim i%Dim s#, t#s = 10t = 10For i = 1 To 7t = t * 0.4s = s + t * 2NextEnd Sub8.Option ExplicitPrivate Sub Command1_Click()Dim i%, fs%, max%, min%, s%Dim ave#fs = Val(InputBox("please input score:", "info", 90))s = fsmax = fsmin = fsFor i = 2 To 7fs = Val(InputBox("please input score:", "info", 90))If max < fs Thenmax = fsEnd IfIf min > fs Thenmin = fsEnd Ifs = s + fsNextave = (s - max - min) / 5Print "该运动员的平均成绩是:" & aveEnd Sub9. ‘同学们,这道题方法很多,主要考察你对选择结构的理解,我给出其中一种方法。
VB课后题
※<习题一>1.计算机硬件系统和软件系统各由哪些部分组成?分别说明其功能与作用。
2.信息在计算机内如何表示,存储容量如何计算?3.Windows系统中有哪些常见的操作对象?4.操作系统的功能、作用与地位如何?5.Windows系统中文件是如何进行管理的?6.如何获取和运行应用程序?5※<习题二>1.叙述建立一个完整的VB应用程序的过程。
2.当建立好一个简单的应用程序后,假定该工程仅有一个窗体模块。
问该工程涉及到多少文件要保存?3.解释什么是类、对象、对象属性、事件与事件过程、方法。
4.VB开发环境中有哪些窗体,各有哪些用途?5.使用VB开发环境牵涉到哪几种模式,并描述各自的作用?6.VB中的错误种类有哪些?如何调试程序?如何使用帮助系统?5※<习题三>习题(一)判断题:1、VB的Byte类型数据的数值范围,在-255到255之间。
(F)2、VB的Double类型数据,可以精确表示其数值范围内的所有实数。
(F)3、Variant是一种特殊的数据类型,该类型变量可以存储除了定长字符串数据及自定义类型外的所有系统定义类型的数据。
Variant类型变量还具有Empty、Error和Null等特殊值。
(T)4、函数MsgBox的前三个参数,分别为图标样式、按钮样式以及默认按钮。
(F)5、在自定义函数过程中,函数名必须被赋值。
(F)6、在Open语句中用Append方式所打开的文件若不存在,则创建该文件。
(T)7、在Open语句中用Input方式所打开的文件必须已经存在,否则会运行错误。
(T)8、“A=B=C”是一个合法的Visual Basic语句。
(T)9、在窗体或模块文件中声明为Private的过程,只能被本窗体或模块中的过程所调用。
(T)10、静态变量是局部变量,当过程再次被执行时,静态变量的初值是上一次过程调用后的值。
(T)11、在VB中,用Dim定义数组时数组元素也自动赋初值0。
VB程序设计课后习题答案
VB课后习题解答第一、二章:1、简述VB6.0的主要特点答:方便、直观的可视化设计工具;面向对象程序设计方法;事件驱动的编程机制;易学易用的应用程序集成开发环境;结构化程序设计语言;完备的联机帮助功能;强大的多媒体、数据库和网络功能。
2、当正常安装VB6.0后,误把Windows子目录删除。
当重新安装Windows后,是否需要再次安装VB6.0?答:要重新安装的。
因为安装VB6.0时,有些VB程序被系统自动安装在Windows目录下,所以一旦删除Windows子目录,就必须重新安装VB6.0。
3、Visual Basic 6.0分为学习版、专业版和企业版,如何知道所安装的是哪个版本?答:在VB6.0的启动界面上,能显示对应的版本。
4、叙述建立一个完整应用程序的过程答:首先建立用户界面的控件对象(简称控件);然后对控件属性进行设置;再对控件事件过程及编程;保存应用程序;程序调试和运行。
5、Visual Basic 6.0有多种类型窗口,若要在设计时看到代码窗口,应怎样操作?答:选择“视图”—>“代码窗口”命令或单击“工程资源管理器”窗口中的“查看代码”按钮。
6、当建立好一个简单的应用程序后,假定该工程仅有一个窗体模块。
试问该工程涉及多少个要保存的文件?若要保存该工程的所有文件,应先保存什么文件?再保存什么文件?若不这样做,系统会出现什么信息?答:涉及两个文件要保存。
先保存窗体文件(.frm),再保存工程文件(.vbp)。
若先保存工程文件,系统也会先弹出“文件另存为”对话框,要求先保存窗体文件。
7、保存文件时,若不改变目录名,则系统默认的目录是什么?答:系统默认的目录是VB988、安装Visual Basic 6.0后,帮助系统是否也已安装?答:没有。
VB6.0的帮助系统在两张光盘上,即MSDN Library,其中还包含了VC、VFP等其他语言的帮助系统。
9、如何使用Visual Basic 6.0的帮助系统?答:最方便的方法是选定要帮助的内容,然后按F1功能键,这时系统打开MSDN Library查阅器,直接显示与选定内容有关的帮助信息。
VB教材课后习题答案
<大学程序设计基础-Visual Basic>教材课后习题答案第1章一、选择题1 2 3 4 5 6 7B D BC B B D第2章一、选择题1 2 3 4 5 6 7 8 9 10B C B C B C A A A A11 12 13 14A B A A二、填空题1.rem或’ _ :2.“” # #3.5x2-3x-2sinA/34.3214565.300三、操作题1、程序段:Private Sub Command1_Click()Dim x As Integer, y As IntegerDim s As Long, c As Longx = Text1.Texty = Text2.Texts = x * yc = (x + y) * 2Label3.Caption = "长方形的面积为" + Str(s)Label4.Caption = "长方形的周长为" + Str(c)End Sub3、程序段:Private Sub Command1_Click()Text1.Text = "第一"End SubPrivate Sub Command2_Click()Text1.Text = "第二"End Sub4、程序代码:Private Sub Text1_Change()Text1.MaxLength = 10End Sub5、程序代码:Private Sub Text1_Click()Text1.SelStart = 0Text1.SelLength = Len(Text1.Text)End Sub第3章一、选择题1 2 3 4 5 6 7D A D B A D B二、填空题1. False2.B^2-4*a*c else三、操作题1.从键盘输入三个值,判断它们能否构成三角形的三个边。
如果能构成一个三角形,则计算三角形的面积。
VB部分课后习题答案
1. 选择题(1) 假定窗体的名称(Name属性)为Form1,则把窗体的标题设置为“VB Test”的语句为(B)。
A. Form1="VB Test"B. Caption="VB Test"C. Form1.Text="VB Test"D. ="VB Test"(2) 下列不能打开代码窗口的操作是(D)。
A.双击窗体上的某个控件B.双击窗体C.按F7键D.单击窗体或控件(3) 为了保存一个Visual Basic应用程序,应当(D)。
A.只保存窗体文件(.frm)B.分别保存工程文件和标准模块文件(.bas)C.只保存工程文件(.vbp)D.分别保存工程文件、窗体文件和标准模块文件(4) 为了装入一个Visual Basic应用程序,应当(C)。
A.只装入窗体文件(.frm)B.分别装入工程文件和标准模块文件(.bas)C.只装入工程文件(.vbp).D分别装入工程文件、窗体文件和标准模块文件(5) 不为了使窗体的大小可以改变,必须把它的BorderStyle属性设置为(A)。
A.1 B.2 C.3 D.42. 填空题(1) 在用Visual Basic开发应用程序时,通常首先需要新建工程、其次还要经过、、、和5步。
(2) 控件和窗体的Name属性只能通过属性窗口设置,不能在运行期间设置。
(3) 代码窗口分为左右两栏,左边一栏称为对象,右边一栏称为事件。
(4) 为了在输入程序时能自动进行语法检查,必须执行菜单中的命令,打开对话框,然后选择“编辑器”选项卡中的选项。
(5) 在保存VB应用程序中,窗体文件和工程文件的扩展名分别为 .frm 和.vbp 。
(6) 为了把一个Visual Basic应用程序装入内存,只要装入工程文件即可。
(7) Visual Basic应用程序通常由3类模块组成,即、和。
(8) 在窗体上画两个文本框和一个命令按钮,然后在命令按钮的代码窗口中编写如下事件过程:Private Sub Command1_Click( )Text1.Text=“VB Programming”Text2.Text=Text1.TextText1.Text=“ABCD”End Sub程序运行后,单击命令按钮,两个文本框中显示的内容分别为ABCD 和VB Programming 。
VB程序设计课后习题答案
VB程序设计课后习题答案VB课后习题解答第一、二章:1、简述VB6.0的主要特点答:方便、直观的可视化设计工具;面向对象程序设计方法;事件驱动的编程机制;易学易用的应用程序集成开发环境;结构化程序设计语言;完备的联机帮助功能;强大的多媒体、数据库和网络功能。
2、当正常安装VB6.0后,误把Window子目录删除。
当重新安装Window后,是否需要再次安装VB6.0?答:要重新安装的。
因为安装VB6.0时,有些VB程序被系统自动安装在Window目录下,所以一旦删除Window子目录,就必须重新安装VB6.0。
3、ViualBaic6.0分为学习版、专业版和企业版,如何知道所安装的是哪个版本?答:在VB6.0的启动界面上,能显示对应的版本。
4、叙述建立一个完整应用程序的过程答:首先建立用户界面的控件对象(简称控件);然后对控件属性进行设置;再对控件事件过程及编程;保存应用程序;程序调试和运行。
5、ViualBaic6.0有多种类型窗口,若要在设计时看到代码窗口,应怎样操作?答:选择“视图”—>“代码窗口”命令或单击“工程资源管理器”窗口中的“查看代码”按钮。
6、当建立好一个简单的应用程序后,假定该工程仅有一个窗体模块。
试问该工程涉及多少个要保存的文件?若要保存该工程的所有文件,应先保存什么文件?再保存什么文件?若不这样做,系统会出现什么信息?答:涉及两个文件要保存。
先保存窗体文件(.frm),再保存工程文件(.vbp)。
若先保存工程文件,系统也会先弹出“文件另存为”对话框,要求先保存窗体文件。
7、保存文件时,若不改变目录名,则系统默认的目录是什么?答:系统默认的目录是VB988、安装ViualBaic6.0后,帮助系统是否也已安装?答:没有。
VB6.0的帮助系统在两张光盘上,即MSDNLibrary,其中还包含了VC、VFP等其他语言的帮助系统。
9、如何使用ViualBaic6.0的帮助系统?答:最方便的方法是选定要帮助的内容,然后按F1功能键,这时系统打开MSDNLibrary查阅器,直接显示与选定内容有关的帮助信息。
VB1-3章_习题答案(课本习题)
VB习题答案(1-3章)习题一一、选择题1.C 2.C 3.A 4.C 5.C 6.C 7.B二、填空题1.学习版、专业版、企业版2.窗体界面3.Alt+F4三、简答题1.简述Visual Basic语言的特点。
Visual Basic是Windows操作平台下的可视化编程语言,它继承和发展了BASIC语言的基本功能,具有简单易学、功能强大等特点。
Visual Basic提供了可视化设计工具,以图形用户界面(GUI)为PC机用户提供了一个直观的工作环境。
支持面向对象的程序设计(OOP),采用事件驱动方式,提供对象的链接与嵌入(OLE)和访问数据库等功能。
2. Visual Basic 6.0的集成开发环境由哪些部分组成,各部分的主要功能是什么?1. 标题栏:用来显示打开的工程名称和系统的工作状态。
2. 菜单栏:菜单栏中包括“文件”、“编辑”、“视图”、“工程”、“格式”、“调试”、“运行”、“查询”、“图表”、“工具”、“外接程序”、“窗口”和“帮助”共有13个菜单项。
这是一组下拉式菜单,提供了设计、编辑、编译和调试应用程序所需要的绝大部分功能和命令。
3. 工具栏: Visual Basic 6.0提供了“编辑”、“标准”、“窗体编辑器”和“调试”4种工具栏。
工具栏上形象直观的排列着一些最常用的命令按钮,对应特定的常用操作命令。
4. 控件箱:控件箱提供了一组控件。
设计界面时,用户可以用鼠标双击控件箱中的控件,在窗体中画出该控件,或用鼠标单击控件箱中的控件,然后在窗体中拖动鼠标画出所需的控件。
5. 窗体设计器:窗体设计器是应用程序最终面向用户的窗口。
各种控件、图形、数据以及程序的运行结果都在窗体设计器窗体中显示出来。
6. 工程资源管理器:在工程资源管理器窗口中(图1-2),列出了应用程序的工程以及工程中的窗体和模块。
7. 属性窗口:属性窗口主要用来设置Visual Basic窗体及各控件的属性特征,属性窗口的主体部分分为左右两列,左边是控件的属性名列表,右边是控件的属性值列表。
VB程序设计教程 习题解答
《VB程序设计教程》(第4版)习题解答单元一巩固与提高答案一、选择题1. Visual Basic 6.0分为3种版本,不属于这3种版本的是A)学习版B)专业版C)企业版D)业余版【答】D。
2. 下列方法中不能退出Visual Basic的是A)按Alt+Q组合键B)按下Alt+F组合键,然后按Esc键C)按F10键,然后按F键,再按X键D)打开“文件”菜单→“退出”命令【答】B。
3. Visual Basic集成的主窗口中不包括A)属性窗口B)标题栏C)菜单栏D)工具栏【答】A。
4. 下列操作可以打开立即窗口的是A)Ctrl+D B)Ctrl+F C)Ctrl+G D)Ctrl+E【答】C。
二、填空题1. 与传统的程序设计语言相比,Visual Basic最突出的特点是____。
【答】事件驱动编程机制。
2. 如果不使用鼠标,用键盘打开菜单和执行菜单命令,第一步应按____键。
【答】功能键F10或Alt键。
3. 建立一个新的标准模块,应该选择____菜单下的“添加模块”命令。
【答】“工程”菜单。
三、思考题1. 简述Visual Basic的特点。
【答】与一般的程序设计语言相比,VB具有以下特点:(1) 可视化的设计平台;(2) 面向对象的设计方法;(3) 事件驱动的编程机制;(4) 结构化的设计语言;(5) 充分利用Windows资源;(6) 开放的数据库功能与网络支持。
2. 简述Visual Basic集成开发环境的组成。
【答】VB 6.0集成开发环境除了具有标准Windows环境的标题栏、菜单栏、工具栏外,还有工具箱、属性窗口、工程管理器窗口、窗体设计器、立即窗口、窗体布局窗口等有用的开发工具。
(1) 标题栏和菜单栏:标题栏中显示的有窗体控制菜单图标、当前激活的工程名称、当前工作模式以及最小化、最大化∕还原、关闭按钮。
菜单栏中显示了“文件”、“编辑”、“视图”、“工程”、“格式”等菜单项,其中包含了VB编程的常用命令。
VB实验教材习题答案 (1)
第1章VB集成环境与VB概述一、选择题第2章常用控件与界面设计一、选择题第3章数据、表达式与简单程序设计一、选择题第4章选择分支与循环一、选择题二、填空题1.5 7 13 12 14 112. 3 1 5 3 4 13. right(a$,i)4. 45. 6-i6. 6 11 10 21 13 347. 5 14 138. Is else end select9. a*(2*i-1)*(-1)*x/(2*i+2) i+110. 0 n-111. 1 t*(-1)*x^2/((2*k-1)*(2*k)) Abs(t)>eps12. count1=count+1 count1>013. sum=0 sum+j st & k & “+”14. 9 x三、编程题1.Option ExplicitPrivate Sub Command1_Click()Dim s As String, i As Integer, ch As String * 1Dim a As Integer, b As Integer, c As Integers = Text1.TextFor i = 1 To Len(s)ch = Mid(s, i, 1)If (ch >= "0" And ch <= "9") Thena = a + 1ElseIf (ch >= "A" And ch <= "Z") Or (ch >= "a" And ch <= "z") Thenb = b + 1Elsec = c + 1End IfNextPrint "数字个数"; aPrint "字符个数"; bPrint "其他字符"; cEnd Sub2.Option ExplicitPrivate Sub Command1_Click()Dim i As Integer, n As IntegerDim a As Integer, b As Integer, c As IntegerFor i = 1 To 50n = Int(Rnd * 90 + 10)Print n;If i Mod 10 = 0 Then PrintIf n <= 40 Thena = a + 1ElseIf n <= 70 Thenb = b + 1Elsec = c + 1End IfNext iPrint "小于等于40的个数:"; aPrint "大于40小于等于70的个数:"; bPrint "大于70的个数:"; cEnd Sub3.Option ExplicitPrivate Sub Command1_Click()Dim x As SingleDim t As Long, n As Integerx = 1t = 1n = 1Do While 1 / t >= 0.0001x = x + 1 / tn = n + 1t = t * nLoopPrint xEnd Sub4.Option ExplicitPrivate Sub Command1_Click()Dim k As Integer, sum As Integer, i As Integerk = InputBox("请输入一个正整数k", "输入框")For i = 1 To Len(CStr(k))sum = sum + Mid(k, i, 1)Next iMsgBox k & "的各位数字之和" & sumEnd Sub5.Option ExplicitPrivate Sub Command1_Click()Dim i As Integer, iSum As LongFor i = 1 To 20iSum = iSum + i ^ 4NextPrint iSumEnd Sub6.Option ExplicitPrivate Sub Command1_Click()Dim a As Integer, b As IntegerDim sum1 As Integer, sum2 As LongDim i As Integer, j As IntegerFor a = 2 To 3000sum1 = 0sum2 = 0For i = 1 To a \ 2If a Mod i = 0 Then sum1 = sum1 + i Next ib = sum1For j = 1 To b \ 2If b Mod j = 0 Then sum2 = sum2 + j Next jIf sum2 = a And a < b Then Print a, bNextEnd Sub7.Private Sub Command1_Click() '打印菱形Dim i As Integer, j As IntegerClsFor i = 1 To 6 '打印菱形上边6行Print Tab(20);Print Spc(6 - i);For j = 1 To 2 * (i - 1) + 1If j = 1 Or j = 2 * (i - 1) + 1 ThenPrint "*";ElsePrint " ";End IfNext jPrintNext iFor i = 5 To 1 Step -1 '打印下半部分Print Tab(20);Print Spc(6 - i);For j = 1 To 2 * (i - 1) + 1If j = 1 Or j = 2 * (i - 1) + 1 ThenPrint "*";ElsePrint " ";End IfNext jPrintNext iEnd Sub8.Option ExplicitPrivate Sub Command1_Click()Dim i As Integer, j As Integer, iSum As IntegerPrint "连续和为1250的正整数是:"For i = 1 To 500iSum = 0For j = i To 500iSum = iSum + jIf iSum >= 1250 Then Exit ForNextIf iSum = 1250 ThenPrint i; " ~"; jEnd IfNextEnd Sub9.Option ExplicitPrivate Sub Command1_Click()Dim a As Integer, b As Integer, c As IntegerFor a = 1 To 50For b = a To 50For c = b To 50If a ^ 2 + b ^ 2 = c ^ 2 ThenPrint a, b, cEnd IfNext cNext bNext aEnd Sub第5章数组一、选择题二、填空题1.Variant2.ReDim A(N)A(1)If M < A(I) Then M = A(I)3.Int(26 * Rnd) + 65Chr(t)i + 1 To 10A(i) > A(j)4.InStr(s, ",")Right(s, Len(s) - n)s5.T – 1I + 16.k = 6 - i – jmax = m7.j = 48j = j-38.i + 1i = i + 19. 23710. 3103511.numi + 1a(j)=temp三、编程题1.Option ExplicitOption Base 1Private Sub Command1_Click()Dim a(10) As IntegerDim i As Integer, max As IntegerFor i = 1 To 10a(i) = Int(90 * Rnd) + 10Print a(i);Next iPrinti = 1max = 0Do While i <= 10If a(i) Mod 3 = 0 ThenIf a(i) > max Thenmax = a(i)End IfEnd Ifi = i + 1LoopIf max = 0 ThenPrint "无要找的数"ElsePrint max & "是最大的能被3整除的数"End IfEnd Sub2.Option ExplicitOption Base 1Private Sub Command1_Click()Dim A() As IntegerDim I As Integer, m As IntegerDim K As IntegerReDim A(10)Print "原数组:";For I = 1 To 10A(I) = IPrint A(I);Next IPrintm = InputBox("????m")K = 9 + mReDim Preserve A(K)For I = 11 To KA(I) = A(I - 10)Next IFor I = 1 To 10A(I) = A(I + m - 1)Next IPrint "平移后的数组:";For I = 1 To 10Print A(I);Next IPrintEnd Sub3.Option ExplicitOption Base 1Private Sub Command1_Click()Dim I As Integer, J As Integer, K As IntegerDim a() As Integer, n As Integer, p As Integer Dim s As String, Flag As Booleanp = 1For K = 10 To 100I = 1Do While I <= 10 And Not FlagJ = 1Do While J <= 10 And Not Flagn = I ^ 2 + J ^ 2If n = K ThenFlag = TrueReDim Preserve a(p)a(p) = Kp = p + 1s = I & Str(J) & Str(K)List1.AddItem sEnd IfJ = J + 1LoopI = I + 1LoopFlag = FalseNext KEnd Sub4.Option ExplicitPrivate Sub Command1_Click()Dim A(10) As IntegerDim B(10) As Integer, S As StringDim I As Integer, J As Integer, X As IntegerA(1) = Int(90 * Rnd) + 10S = A(1)For I = 2 To 10DoX = Int(90 * Rnd) + 10For J = 1 To I - 1If X = A(J) Then Exit ForNext JIf J = I ThenA(I) = XS = S & " " & A(I)Exit DoEnd IfLoopNext IText1.Text = SB(1) = Int(90 * Rnd) + 10S = B(1)For I = 2 To 10DoX = Int(90 * Rnd) + 10For J = 1 To I - 1If X = B(J) Then Exit ForNext JIf J = I ThenB(I) = XS = S & " " & B(I)Exit DoEnd IfLoopNext IText2.Text = SS = ""For I = 1 To 10For J = 1 To 10If A(I) = B(J) ThenS = S & " " & A(I)End IfNext JNext IIf S = "" ThenText3.Text = "没有重复"ElseText3.Text = SEnd IfEnd SubPrivate Sub Command2_Click()Text1.Text = ""Text2.Text = ""Text3.Text = ""Text1.SetFocusEnd Sub5.Option ExplicitPrivate Sub Command1_Click()Dim I As Integer, J As IntegerDim a() As Integer, K As Integer, Sum As Integer K = Val(Text1.Text)I = 1DoJ = K Mod 10ReDim Preserve a(I)a(I) = JSum = Sum + JK = K \ 10I = I + 1Loop Until K = 0Text2.Text = SumEnd Sub6.Option ExplicitPrivate Sub Command1_Click()Dim a(100, 2) As Integer, K As IntegerDim I As Integer, J As IntegerDim M As Integer, N As IntegerK = 1For I = 1 To 99For J = 1 To 99If I > J ThenM = I - JN = I + JIf Sqr(M) = Int(Sqr(M)) And Sqr(N) = Int(Sqr(N)) ThenList1.AddItem I & " " & Ja(K, 1) = Ia(K, 2) = JK = K + 1End IfEnd IfNext JNext IEnd Sub7.Option ExplicitOption Base 1Dim a(5, 5) As IntegerPrivate Sub Command1_Click() '生成数组并显示Dim i As Integer, j As IntegerPicture1.ClsPicture2.ClsPicture3.ClsRandomizeFor i = 1 To 5For j = 1 To 5a(i, j) = Int(90 * Rnd) + 10Picture1.Print a(i, j);NextPicture1.PrintNextEnd SubPrivate Sub Command2_Click()Dim i As Integer, j As Integer, max As IntegerDim b(5) As Integer, c(5) As IntegerFor i = 1 To 5max = a(i, 1)For j = 1 To 5If max < a(i, j) Thenmax = a(i, j)End Ifb(i) = maxIf max = a(i, j) Then c(i) = jNext jNext iFor i = 1 To 5Picture2.Print b(i)Picture3.Print c(i)NextEnd Sub8.Option ExplicitOption Base 1Dim a(5, 5) As IntegerPrivate Sub Command1_Click() '生成数组并显示Dim i As Integer, j As IntegerPicture1.ClsPicture2.ClsLabel3.Caption = "最大值?"Label4.Caption = "最小值?"RandomizeFor i = 1 To 5For j = 1 To 5a(i, j) = Int(90 * Rnd) + 10Picture1.Print a(i, j);NextPicture1.PrintNextEnd SubPrivate Sub Command2_Click() '交换并显示Dim i As Integer, j As Integer, t As IntegerDim maxi As Integer, mini As Integer, max As Integer, min As Integer max = 10: min = 99For i = 1 To 5For j = 1 To 5If max < a(i, j) Thenmax = a(i, j)maxi = iEnd IfIf min > a(i, j) Thenmin = a(i, j)mini = iEnd IfNextNextIf maxi <> mini ThenFor j = 1 To 5t = a(maxi, j)a(maxi, j) = a(mini, j)a(mini, j) = tNext jFor i = 1 To 5For j = 1 To 5Picture2.Print a(i, j);NextPicture2.PrintNextLabel3.Caption = "最大值" & max & "在第" & maxi & "行"Label4.Caption = "最小值" & min & "在第" & mini & "行"ElsePicture2.Print "最小值和最大值在一行"Label3.Caption = "最大值" & max & "在第" & maxi & "行"Label4.Caption = "最小值" & min & "在第" & mini & "行"End IfEnd SubPrivate Sub Form_click()Picture1.ClsPicture2.ClsLabel3.Caption = ""Label4.Caption = ""End Sub9.Option Base 1Private Sub Command1_Click()Dim i As Integer, j As Integer, n As Integer, a() As Integern = InputBox("请输入一个奇数N:")If n Mod 2 = 0 ThenMsgBox ("请重新输入奇数!")End IfReDim a(n, n)For i = 1 To nFor j = 1 To nIf i = (n + 1) / 2 And j = (n + 1) / 2 Thena(i, j) = -1ElseIf i = j Or i + j = n + 1 Thena(i, j) = 1Elsea(i, j) = 0End IfNext jFor i = 1 To nFor j = 1 To nPrint a(i, j);Next jPrintNext iEnd Sub10.Option Base 1Dim a(10) As IntegerPrivate Sub Command1_Click()Dim i As IntegerPrint "生成的数组:"RandomizeFor i = 1 To 10a(i) = Int(Rnd * 90) + 10Print a(i);NextPrintEnd SubPrivate Sub Command2_Click()Dim i As Integerx = InputBox("请输入要删除的数组元素下标:") Print "删除第" & x & "个数组元素后:"For i = x + 1 To 10a(i - 1) = a(i)NextFor i = 1 To 9Print a(i);NextEnd Sub11.Option ExplicitDim a(20) As Integer, i As IntegerPrivate Sub Command1_Click()RandomizeFor i = 1 To 20a(i) = Int(Rnd * 9) + 1Text1 = Text1 & a(i) & " "If i = 10 Then Text1 = Text1 & vbCrLf NextPrivate Sub Command2_Click()Dim j As Integer, k As Integer, b(20) As Boolean 'b(2)用来记录a(2)是否和前面的数相同,相同记为true,不再统计For i = 1 To 20k = 1If b(i) = False Then '如果b(i)=False,表示a(i)没有被统计过For j = i + 1 To 20If a(i) = a(j) Thenk = k + 1b(j) = TrueEnd IfNext jList1.AddItem a(i) & "出现次数:" & kEnd IfNextEnd SubPrivate Sub Command3_Click()Text1 = ""List1.ClearEnd Sub第6章过程一、选择题二、填空题1. 6 .2. 4 20 1013.第一行是 6 26 、第三行是-2 984.第一行10 6 、第二行 5 -55.第一行 6 5 、第三行8 76.第一行11 、第二行77.Fun(i)Fun=p8.第一行 4 、第二行2079.第一行29 、第二行28.710.J=kb( ) As Integerb( k-1) =b(k)i11.第一行gec 、第二行ge 、第四行 312.p1 = True And p2 = True 或p1 And p2= isp(i)Isp = Truem Mod i = 013.Convert(st)Len(s)"A" To "F"k = k + p * h14.isualVisualVisu15.s + an + 1x As Single, n As Integer 、p * (x + i) / ((2 * i - 1) * i * x)16.27617.Left(s, 1)Mid(s, i - 1, 1) = Mid(s, i, 1)n = 1c & CStr(n)18.chtempTrue19.val(mid(s,i,j))n as longprime=True20.A(2,2)的值是 6 ,A(3,1) 的值是8 ;A(4,2) 的值是 321.Option1(i)X22.1023.第一行7 6 ,第二行16 16 ,第三行,4524.第一行15 1 ,第二行35 3 ,第三行,50三、改错题1、Option Base 1Private Sub Command1_Click()Dim A() As Integer, I As Integer, J As Integer, Logic As Boolean Dim K As IntegerReDim A(1)A(1) = 50————————'K=1For I = 51 To 149K = 1 '位置错Logic = FalseCall Sub1(A, I, Logic)If Logic ThenK = K + 1ReDim A(K) 'ReDim Preserve A(K)A(K) = IEnd IfNext IFor I = 1 To UBound(A)Text1 = Text1 & Str$(A(I))If I Mod 5 = 0 Then Text1 = Text1 & vbCrLfNext IEnd SubPrivate Sub Sub1(A() As Integer, N As Integer, F As Boolean) Dim I As Integer, J As Integer, Ub As IntegerUb = UBound(A)For I = 1 To UbFor J = 2 To A(I)If A(I) Mod J = 0 And N Mod J = 0 ThenExit For 'Exit SubEnd IfNext JF = TrueNext IEnd Sub2、Option ExplicitOption Base 1Private Sub Command1_Click()Dim I As Integer, Flg As Boolean, S1 As Integer, S2 As IntegerDim J As Integer, K As Integer, P() As IntegerReDim P(1)P(1) = 2For I = 3 To 150 Step 2For J = 2 To Sqr(I)If I Mod J = 0 Then Exit ForNext JIf J > Sqr(I) ThenReDim Preserve P(UBound(P) + 1)P(UBound(P) + 1) = I 'P(UBound(P)) = IEnd IfNext IFor I = 80 To 125If fun(I, P, S1, S2) Then 'If fun(I, P, S1, S2)Text1 = Text1 & Str$(I) & "=" & Str(S1) & "*" & Str$(S2) & vbCrLf End IfNext IEnd SubPrivate Function fun(N As Integer, P() As Integer, S1 As Integer, S2 As Integer) As Boolean Dim I As Integer, J As IntegerFor I = 1 To UBound(P)For J = 1 To UBound(P) - 1If N = P(I) * P(J) ThenS1 = P(I)S2 = P(J)'fun = TrueExit Functionfun = True '位置错End IfNext JNext IEnd Function3、Option ExplicitPrivate Sub Get_Chess(Chess() As Integer, idx As Integer, Over As Integer) 'ByVal idx As IntegerDim Ub As Integer, Counter As Integer, K As IntegerUb = UBound(Chess)Chess(idx) = 0Counter = 1K = 0 '位置错Do Until Counter = Ub - 1Do Until K = 2idx = idx + 1If idx > Ub Then idx = 1K = K + Chess(idx)LoopChess(idx) = 0Counter = Counter + 1LoopFor Over = 1 To UbIf Chess(Over) <> 0 Then Exit ForNext OverEnd SubPrivate Sub Command1_Click()Dim Chess(32) As Integer, I As Integer, J As IntegerDim K As Integer, idx As IntegerFor I = 1 To 32For J = 1 To 32Chess(J) = 1Next JCall Get_Chess(Chess, I, K)If K = 23 ThenText1 = "从第" & Str$(I) & "号棋子开始取"Exit ForEnd IfNext IEnd Sub4、Option ExplicitPrivate Sub Form_Click()Dim S As String, Flg As BooleanDoS = InputBox("输入一个自然数")If S = "" Or Not IsNumeric(S) ThenMsgBox "请重新输入", 48 + vbOKOnlyElseExit DoEnd IfLoopjudge(S, Flg) ' Call judge(S, Flg) 或judge S, Flg If Flg ThenPrint S; "是回文数"ElsePrint S; "不是回文数"End IfEnd SubPrivate Sub judge(Ch As String, F As Boolean)Dim L As Integer, I As IntegerL = Len(Ch)F = True ' F = FalseFor I = 1 To LIf Mid$(Ch, I, 1) <> Mid$(Ch, L + 1 - I, 1) Then Exit Sub Next IF = False ' F = TrueEnd Sub四、编程题1.Private Function Prime(a As Integer) As BooleanDim i As IntegerFor i = 2 To Sqr(a)If a Mod i = 0 Then Exit FunctionNext iPrime = TrueEnd Function'方法一Private Sub Command1_Click()Dim m As Integer, i As Integerm = InputBox("请输入一个大于2 的偶数")If m <= 2 Or m Mod 2 <> 0 Then MsgBox "请输入大于2的偶数": Exit Sub If Prime(2) And Prime(m - 2) ThenPrint m & "=2 +" & m - 2ElseDoi = i + 1If Prime(2 * i + 1) And Prime(m - (2 * i + 1)) ThenPrint m & "=" & 2 * i + 1 & "+" & m - (2 * i + 1)Exit DoEnd IfLoop While 2 * i + 1 < m - (2 * i + 1)End If'方法二Private Sub Command2_Click()Dim m As Integer, i As Integer, p() As Integer, n As IntegerDim flg As Booleanm = InputBox("请输入大于2的偶数")If m <= 2 Or m Mod 2 <> 0 Then MsgBox "请输入大于2的偶数": Exit Sub ReDim p(1)p(1) = 2n = 1For i = 3 To m - 2 Step 2If Prime(i) Thenn = n + 1ReDim Preserve p(n)p(n) = iEnd IfNext iFor i = 1 To nFor j = 1 To nIf p(i) + p(j) = m ThenPrint m & "=" & p(i) & "+" & p(j)flg = TrueExit ForEnd IfNext jIf flg = True Then Exit ForNext iEnd Sub2.Private Function Fact(a As Integer) As LongIf a = 0 Or a = 1 ThenFact = 1ElseFact = a * Fact(a - 1)End IfEnd FunctionPrivate Sub Command1_Click()Dim n As Integer, m As Integer, result As Singlen = Val(Text1.Text)m = Val(Text2.Text)If n >= m Thenresult = Fact(n) / Fact(m) / Fact(n - m)Text3.Text = resultMsgBox "要求n>=m,请重新输入"Text1.Text = ""Text2.Text = ""Text1.SetFocusEnd IfEnd SubPrivate Sub Command2_Click()Text1.Text = ""Text2.Text = ""Text3.Text = ""Text1.SetFocusEnd Sub3.Private Function Istgs(n As Integer) As BooleanDim s As String, L As IntegerL = Len(CStr(n))s = CStr(n ^ 2)If Right(s, L) = n Then Istgs = TrueEnd FunctionPrivate Sub Command1_Click()Dim n As IntegerFor n = 10 To 300If Istgs(n) Then List1.AddItem n & "^2" & "=" & n ^ 2 Next nEnd SubPrivate Sub Command2_Click()EndEnd Sub4.Private Sub Command1_Click()Dim a(3, 4) As Integer, i As Integer, j As IntegerDim m As Integer, mj As IntegerRandomizeFor i = 1 To 3For j = 1 To 4a(i, j) = Int(900 * Rnd + 100)Print a(i, j);Next jPrintNext iFor i = 1 To 3m = 0Call max(a, i, m, mj)Print "第" & i & "行最大值为" & m & ",在第" & mj & "列"Next iEnd SubPrivate Sub max(a() As Integer, i As Integer, m As Integer, maxj As Integer) Dim j As Integerm = a(i, 1): maxj = 1For j = 2 To UBound(a, 2)If a(i, j) > m Thenm = a(i, j)maxj = jEnd IfNext jEnd SubPrivate Sub Command2_Click()EndEnd Sub5.Private Function Judge(n As Integer) As BooleanDim sum As Integersum = yz(n)If yz(sum) = 2 * n Then Judge = TrueEnd FunctionPrivate Function yz(n As Integer) As IntegerDim i As IntegerFor i = 1 To nIf n Mod i = 0 Then yz = yz + iNext iEnd FunctionPrivate Sub Command1_Click()Dim n As IntegerFor n = 1 To 500If Judge(n) Then Print nNext nEnd SubPrivate Sub Command2_Click()EndEnd Sub6.Private Sub Command1_Click()Dim n As Integer, j As Integer, flg As BooleanFor n = 2 To 30flg = FalseFor j = 2 To nIf pfs(j) And n Mod j = 0 Thenflg = TrueExit ForEnd IfNext jIf flg = False Then Print n;Next nEnd SubPrivate Function pfs(n As Integer) As BooleanIf Sqr(n) = Int(Sqr(n)) Then pfs = TrueEnd Function7.Private Function fxs(n As Long) As LongDim i As Integer, s As StringFor i = 1 To Len(CStr(n))s = Mid(CStr(n), i, 1) & sNext ifxs = sEnd Function'判断某数是否为回文数Private Function Hws(n As Long) As BooleanDim i As Integer, s As String, L As Integers = CStr(n): L = Len(s)For i = 1 To Len(s) / 2If Mid(s, i, 1) <> Mid(s, L + 1 - i, 1) Then Exit Function Next iHws = TrueEnd FunctionPrivate Sub Command1_Click()Dim x As Long, t As Longx = InputBox("请输入一个正整数:")t = xDo While Hws(t) = FalsePrint t; "+"; fxs(t); "="; t + fxs(t)t = t + fxs(t)LoopEnd Sub8.Private Function fxs(n As Long) As LongDim i As Integer, s As StringFor i = 1 To Len(CStr(n))s = Mid(CStr(n), i, 1) & sNext ifxs = sEnd FunctionPrivate Sub Command1_Click()Dim n As Long, t As LongFor n = 1 To 999t = fxs(n)If t ^ 2 = fxs(n ^ 2) And n Mod 10 <> 0 And n < t ThenList1.AddItem n & " " & tList2.AddItem n & "^2" & "=" & n ^ 2 & " " & t & "^2" & "=" & t ^ 2 End IfNext nEnd Sub9.Private Function fxs(n As Long) As LongDim i As Integer, s As StringFor i = 1 To Len(CStr(n))s = Mid(CStr(n), i, 1) & sNext ifxs = sEnd FunctionPrivate Function Judge(n As Integer) As BooleanDim i As Integer, L As Integer, a(9) As Integer, t As IntegerIf Sqr(n) = Int(Sqr(n)) ThenL = Len(CStr(n))For i = 1 To Lt = Mid(CStr(n), i, 1)a(t) = 1Next iFor i = 0 To 9Sum = Sum + a(i)Next iIf Sum = L - 1 Then Judge = TrueEnd IfEnd FunctionPrivate Sub Command1_Click()Dim a As IntegerFor a = 300 To 2000If Judge(a) Then List1.AddItem aNext aEnd Sub10.Private Function F(n As Integer) As BooleanDim i As IntegerFor i = 1 To Len(CStr(n))If i Mod 2 = 1 And Mid(CStr(n), i, 1) Mod 2 <> 1 Then Exit FunctionIf i Mod 2 = 0 And Mid(CStr(n), i, 1) Mod 2 <> 0 Then Exit Function Next iF = TrueEnd FunctionPrivate Sub Command1_Click()Dim a(8) As Integer, i As Integer, j As IntegerRandomizeDot = Int(900 * Rnd + 100)For j = 1 To iIf t = a(j) Then Exit ForNext jIf j = i + 1 Theni = i + 1a(i) = tList1.AddItem a(i)If F(a(i)) Then List2.AddItem a(i)End IfLoop Until i = 8End SubPrivate Sub Command2_Click()List1.ClearList2.ClearEnd SubPrivate Sub CmdEnd_Click()EndEnd Sub11.Private Function prime(a As Integer) As BooleanDim i As IntegerFor i = 2 To Sqr(a)If a Mod i = 0 Then Exit FunctionNext iprime = TrueEnd FunctionPrivate Function nx(n As Integer) As IntegerDim i As Integer, s As StringFor i = 1 To Len(CStr(n))s = Mid(CStr(n), i, 1) & sNext inx = Val(s)End FunctionPrivate Sub Command1_Click()Dim n As Integer, t As IntegerFor n = 100 To 900t = nx(n)If prime(n) And prime(t) And n < t ThenList1.AddItem "(" & n & "," & t & ")"End IfNext nEnd SubPrivate Sub Command2_Click()List1.ClearEnd Sub12.Option Base 1Dim a(4, 5) As IntegerPrivate Sub Command1_Click()Dim i As Integer, j As IntegerRandomizeFor i = 1 To 4For j = 1 To 5a(i, j) = Int(Rnd * 90 + 10)Picture1.Print a(i, j);Next jPicture1.PrintNext iEnd SubPrivate Sub Fp(a() As Integer, i As Integer, maxj As Integer, Flg As Boolean) Dim max As Integer, j As Integer, t As Integermax = a(i, 1): maxj = 1For j = 2 To UBound(a, 2)If a(i, j) > max Thenmax = a(i, j)maxj = jEnd IfNext jFor t = 1 To UBound(a, 1)If a(t, maxj) > max ThenFlg = FalseExit SubEnd IfNextFlg = TrueEnd SubPrivate Sub Command2_Click()Dim i As Integer, m As Integer, mj As Integer, f As BooleanFor i = 1 To 4f = Falsem = 0: mj = 0Call Fp(a, i, mj, f)If f = True ThenText1.Text = Text1.Text & "(" & i & "," & mj & "):" & a(i, mj) & vbCrLf End IfNext iEnd SubPrivate Sub Command3_Click()Picture1.ClsText1 = ""End Sub13.Private Sub Command1_Click()Dim a(30) As Integer, i As Integer, j As IntegerDim Flag As BooleanRandomizeDot = Int(900 * Rnd + 100)For j = 1 To iIf t = a(j) Then Exit ForNext jIf j = i + 1 Theni = i + 1a(i) = tText1.Text = Text1.Text + Str(a(i))If i Mod 10 = 0 Then Text1.Text = Text1.Text + vbCrLfIf IsDown(a(i)) ThenList1.AddItem a(i)Flag = TrueEnd IfEnd IfLoop Until i = 30If Flag = False Then List1.AddItem "无降序数"End SubPrivate Function IsDown(n As Integer) As BooleanDim i As Integer, S As StringS = CStr(n)For i = 1 To Len(S) - 1If Mid(S, i, 1) < Mid(S, i + 1, 1) Then Exit FunctionNext iIsDown = TrueEnd FunctionPrivate Sub Command2_Click()List1.ClearText1 = ""End Sub14.Option ExplicitPrivate Sub CmdFind_Click()Dim i As Integer, p As String, st As String, st1 As StringFor i = 100 To 999st = ""If csum(i) = zyz(i, st) Thenp = CStr(i)st1 = Left(p, 1) & "+" & Mid(p, 2, 1) & "+" & Right(p, 1)List1.AddItem i & ": " & st1 & "=" & Left(st, Len(st) - 1)End IfNext iIf List1.ListCount = 0 ThenList1.AddItem "无满足要求的数!"End IfEnd SubPrivate Function csum(m As Integer) As Integer '求各位数字之和Dim i As Integer, p As Stringp = CStr(m)For i = 1 To Len(p)csum = csum + Val(Mid(p, i, 1))Next iEnd FunctionPrivate Function zyz(ByVal m As Integer, st As String) As Integer '求所有质因子之和Dim i As Integeri = 2DoIf m Mod i = 0 Thenzyz = zyz + ist = st & i & "+"m = m \ iElsei = i + 1End IfLoop Until m = 1End Function15.Private Sub Command1_Click()Dim k As Integer, i As Integerk = InputBox("请输入要求的数列项数:")List1.AddItem "共输出前" & k & "项数列"For i = 0 To kList1.AddItem p(i)NextEnd SubPrivate Function p(n As Integer) As IntegerIf n = 0 Or n = 1 Or n = 2 Thenp = 1Elsep = p(n - 2) + p(n - 3)End IfEnd Function第7章文件一、选择题二、填空题1.顺序文件和随机文件2. EOF3. Write和Print4.返回或设置当前的工作目录5.5116.文件的写语句7.Append8.LOF9.关闭10.Pattern11.【1】For Input 【2】#2 【3】Not EOF(2) 12.【1】”END”【2】Text1.Text 或者Text113.【1】Input 【2】ch 【3】Len(mystr) 14.【1】Number 【2】s15.【1】For Append As #1 【2】"end" 【3】ct,nt 16.【1】For Input 【2】For Output As #2 【3】Not EOF(1) 【4】Line Input #1,str1 【5】Close #1,#2 【6】Kill “C:\old.txt 17.【1】Open "C:StuData.txt" For OutPut As #1 【2】Write 18.【1】"C:\data.txt" 【2】#1, a(i) 【3】k>1 And a(k-1)>b 【4】k = k -1三、综合题1.Option Base 1Dim arr(100) As IntegerPrivate Sub Command1_Click()Dim i As IntegerOpen "c:\in18.txt" For Input As #6For i = 1 To 100Input #6, arr(i)Next iClose #6End SubPrivate Sub Command2_Click()Dim i As IntegerText1.Text = ""Open "c:\out18.txt" For Output As #8For i = 1 To 100If arr(i) Mod 2 <> 0 ThenText1.Text = Text1.Text & Str(arr(i))Write #8, arr(i)End IfNext iClose #8End Sub2.Dim str As StringDim n As LongPrivate Sub Command1_Click()CommonDialog1.Filter = "文本文件(*.txt)|*.txt|All Files(*.*)|*.*"CommonDialog1.FilterIndex = 1CommonDialog1.Action = 1Open CommonDialog1.FileName For Input As #2n = LOF(2)str = Input(n, #2)Text1.Text = strClose #2End SubPrivate Sub Command2_Click()Dim i As IntegerFor i = 1 To Len(str)If Asc(Mid(str, i, 1)) <= Asc("Z") And Asc(Mid(str, i, 1)) >= Asc("A") Then Mid(str, i, 1) = LCase(Mid(str, i, 1))ElseIf Asc(Mid(str, i, 1)) <= Asc("z") And Asc(Mid(str, i, 1)) >= Asc("a") Then Mid(str, i, 1) = UCase(Mid(str, i, 1))End IfNext iText1.Text = strEnd SubPrivate Sub Command3_Click()Open "D:\out.txt" For Output As #3Print #3, strClose #3End Sub第8章程序调试一.选择题二.改错题1.a(i)=int(Rnd*19)+1 →a(i)=int(rnd*20)+1For l=1 to a(i)+1 →for i=2 to a(i)+1If l=a(i) →if l <> a(i)K=k+1 →k=k-1。
VB课后习题答案---选择题
1、下面不是VB工作模式的是(C )A.设计模式B.运行模式C.编模汇式D.中断模式2、可视化编程的最大优点是(C )A.具有标准工具箱B.一个工程文件由若干个窗体文件组成C.不需要编写大量代码来描述图形对象D.所见即所得3、下列不能打开属性窗口的操作是(C )A.执行“视图”菜单中的“属性窗口”命令B.按F4键C.按Ctrl+TD.单击工具栏上的“属性窗口”按钮4、下列可以打开立即窗口的操作是(D )A.Ctrl+D B.Ctrl+E C.Ctrl+F D.Ctrl+G5、Visual Basic的编程机制是(D )A.可视化B.面向对象C.面向图形D.事件驱动1、以下能够触发文本框Change事件的操作是(D )A.文本框失去焦点B.文本框获得焦点C.设置文本框的焦点D.改变文本框的内容2、应用程序设计完成后,应将程序保存,保存的过程是(D )A.只保存窗体文件即可B.只保存工程文件即可C.先保存工程文件,之后保存窗体文件D.先保存窗体文件(或标准模块文件),之后还要保存工程文件3、VB应用程序的运行模式是(C)A.解释运行模式B.编译运行模式C.两者都有D.汇编模式4、任何控件都具有的属性是(C )A.TEXT B.CAPTION C.NAME D.FORECOLOR5、决定控件上文字的字体、字形、大小及效果的属性是(D )A.TEXT B.CAPTION C.NAME D.FONT6、在窗体上建立了多个控件,如TEXT、LABEL1、COMMAND1,若要使程序一运行焦点就定位在COMMAND1控件上,应将COMMAND1控件的(B )设置为0 A.INDEX B.TABINDEX C.TABSTOP D.ENABLED7、运行时,当用户向文本框输入新的内容,或在程序代码中对文本框的TEXT属性进行赋值从而改变了文本框的TEXT属性值时,将触发文本框的(D)事件A.CLICK B.DBLCLICK C.GOTFOCUS D.CHANGE8、在运行时,按TAB键跳过了一个可以获得焦点的控件(如文本框),则可能是因为(D )A.该控件的TABSTOP属性值为TRUE B.该控件的TABINDEX属性值为FALSE C.该控件的ENABLED属性值为TRUE D.该控件的ENABLED属性值为FALSE9、为了防止用户随意将光标置于控件上,应(D)A.将控件的TABINDEX属性设置为0B.将控件的TABSTOP属性设置为TRUEC.将控件的TABSTOP属性设置为FALSED.将控件的ENABLED属性设置为FALSE10、若要使标签控件显示时,不覆盖其背景内容,应设置标签控件的(D )属性A.BACKCOLOR B.BORDERSTYLEC.FORECOLOR D.BACKSTYLE11、如果要在文本框中输入字符时,只显示某个字符,如星号(*),运行时,在文本框中输入的字符仍然显示出来,而不显示星号,原因可能是(B )A.文本框的MULTILINE属性值为TRUEB.文本框的LOCKED属性值为TRUEC.文本框的MULTILINE属性值为FALSED.文本框的LOCKED属性为FALSE12、在运行阶段,要在文本框TEXT1获得焦点时选中文本框中所有内容,对应的事件过程是(A)A.Private Sub Text1_GotFocus( )Text1.SelStart=0Text1.Sellength=Len(Text1.Text)End SubB.Private Sub Text1_LostFocus( )Text1.SelStart=0Text1.Sellength=Len(Text1.Text)End SubC.Private Sub Text1_Change( )Text1.SelStart=0Text1.Sellength=Len(Text1.Text)End SubD.Private Sub Text1_SetFocus( )Text1.SelStart=0Text1.Sellength=Len(Text1.Text)End Sub13、Visual Basic继承了Basic语言简单易用的语法特点,同时支持面向对象的编程机制,其中构成其控件(对象)的三要素是(D)A.属性、事件、事件过程B.控件、窗体、事件C.属性、过程、方法D.属性、事件、方法14、决定标签(Label)显示的属性是(C )A.Text B.Name C.Caption D.Alignment15、命令按钮的标题文字由(B )属性来设置。
VB习题集(1)(1)
一、单项选择题1、以下说法错误的是_____C____。
A. Visual Basic是一种可视化编程工具B. Visual Basic是结构化程序设计语言C. Visual Basic是面向过程的编程语言D. Visual Basic采用事件驱动编程机制2、窗体和控件的描述及其属性的设置保存在_____B____文件中。
A. 工程B. 窗体C. 窗体二进制数据D. 标准模块3、假定一个Visual Basic应用程序由一个窗体模块和一个标准模块构成。
为了保存该应用程序,以下正确的操作是____B_____。
A. 只保存窗体模块文件B. 分别保存窗体模块、标准模块和工程文件C. 只保存窗体模块和标准模块文件D. 只保存工程文件4、以下叙述中错误的是____C_____。
A.在Visual Basic的窗体中,一个命令按钮是一个对象B.事件是能够被对象识别的状态变化或动作C. 事件都是由用户的键盘操作或鼠标操作触发的D. 不同的对象可以具有相同的方法5、以下叙述中,错误的是____C_____。
A. 一个Visual Basic应用程序可以含有多个标准模块文件B. 一个Visual Basic工程可以含有多个窗体文件C. 标准模块文件可以属于某个指定的窗体文件D. 标准模块文件的扩展名为.bas6、Visual Basic的窗体设计器主要是用来____A_____。
A. 建立用户界面B. 添加图形、图像、数据等控件C. 编写程序源代码D. 设计窗体的布局7、Visual Basic是一种结构化高级程序设计语言,它采用的是_____C____驱动方式。
A.键盘B.鼠标C.事件D.函数8、Visual Basic是一种面向对象的程序设计语言,构成对象的三要素是____A_____。
A.属性、事件、方法B.控件、属性、事件C.窗体、控件、过程D.窗体、控件、模块9、Visual Basic主要用于_____D____。
VB程序设计课后习题答案(科学出版社)(1)
同步练习1二、选择题01——05 CADAB06——10 ACDAB11——15 CBDBB同步练习2二、选择题01——05 ABDCA06——10 CACBC11——15 DADAD16——20 BDBBB三、填空题1.可视2.LEFT、TOP、WIDTH、HEIGHT3.按字母顺序4.查看代码5.工具、编辑器6.FORM窗体、FONT7.MULTILINE8.在运行时设计是无效的9.工程、工程属性、通用、FORM1.SHOW 10.TABINDEX、0同步练习3二、选择题01——05 BCADB06——10 ADBBC11——15 DBCBA16——20 BAABB三、填空题1.整型、长整型、单精度型、双精度型2.SIN(30*3.14/180)+SQR(X+EXP(3))/ABS(X-Y)-LOG(3*X) 3.164、今天是:3-194.FALSE5.-4、3、-3、3、-4、46.CDEF7.(X MOD 10)*10+X\108.(35\20)*20=20( 35 \ 20 )* 20 = 209.X MOD 3=0 OR X MOD 5=010.27.6、8.2、8、1、100、397、TRUE、FALSE同步练习4一、选择题01——05 DBCAD06——10 CBBAB11——15 D25BAC16——20 CBACB21——25 DAABC二、填空题1.正确性、有穷性、可行性、有0个或多个输入、有1个或多个输出2.1 2 33.X>=74.X<AMIN5.10246.117.128.6、I、”*”;9.0、100、I+110.2*I、6、”*”;三、编程题1.编程求n!,n从键盘输入。
Private Sub Form_Click()Dim n%, s%, i%n = Val(InputBox("请输入n的值:"))s = 1For i = 1 To ns = s * iNext iPrint n; "!="; sEnd Sub2.编程求100以内的全部质数。
VB教材习题_参考答案1-6章
Visual Basic程序设计教程(李杰主编清华大学出版社 2011.2)习题答案习题2参考答案2.2 单选题1、B2、C3、A4、D5、A6、B7、D8、C9、B 10、D2.3 填空题1、事件驱动2、Cancel3、Name4、Private Sub Form1_Click()5、运行程序6、代码窗口7、Text1.Text = "我是一个学生"8、LostFocus()事件9、Label1.Caption = "请输入用户名"Label1.ForeColor = vbGreen10、(Text1.Text)*22.4 事件练习题1、①该事件的对象是标签Label1,单击标签触发该事件。
②缺省Label1对象的代码是针对窗体,其余有Label1对象的代码是针对标签的。
③Label1.AutoSize = True语句使标签的大小自动随文字的多少而改变。
2、程序运行后,单击命令按钮,在Text1文本框显示"知音海外版",在Text2文本框显示"计算机世界"。
3、单击“显示文本框”命令按钮触发的事件过程Private Sub Command1_Click()Text1.Visible = TrueText1.ForeColor = vbRedText1.Text = "VB程序设计"End Sub单击“隐藏文本框”命令按钮触发的事件过程Private Sub Command2_Click()Text1.Visible = FalseEnd Sub习题3参考答案3.2 单选题1 C2 C3 D4 B5 B6 B7 B8 C9 D3.3填空题1.REM(或‘) _ :2 双引号(“”)#3 $ %4 UCASE()5.(log(1+d*d)-exp(2))^(5/2) [ 还有一种理解方式:(log(1+d*d)-e*e)^(5/2)]6. &O113 &H4B习题4参考答案4.2 单选题BDCBD4.3 填空题1.MsgBox("是否删除? ", vbOkCancel + vbQuestion, "删除")2.The Length of 12345=53. 变量或表达式4. 15. loop4.4 程序设计题1.Private Sub Command1_Click()If Text1.Text = "asdf" ThenMsgBox "密码正确!"ElseMsgBox "密码错误", vbRetryCancel, "错误"End IfEnd Sub2. < 题目中的“连续产生n*n个字母”应该改为“连续产生n个字母”> Private Sub Command1_Click()Dim n%, y%, i%n = Val(Text1.Text)If n > 10 Or n<=0 ThenMsgBox "数据超界!"Text1.Text=””Text1.SetFocusElsey = Int((90 - 65 + 1) * Rnd) + 65For i = 1 To nPrint Chr(y + i)Next iEnd IfEnd Sub3.Private Sub Form_Click()Dim a!, b!, c!, x1!, x21, d!a = Val(Text1.Text)b = Val(Text2.Text)c = Val(Text3.Text)d = b * b - 4 * a * cIf d >= 0 Thenx1 = (-b + Sqr(d)) / (2 * a)X2 = (-b - Sqr(d)) / (2 * a)Print x1; X2ElsePrint "没有实根"End IfEnd Sub4.Private Sub Form_Click()Dim i%, j%, s%, n%,q%n = InputBox("enter n:")q = 0For i = 1 To ns = 0For j = 1 To is = s + jNext jq = q + sNext iPrint qEnd Sub5.Private Sub Form_Click()Dim i%, j%, n%, k%n = 0For i = 1 To 3For j = 1 To 3For k = 1 To 3Print i & j & k,n = n + 1If n Mod 5 = 0 Then PrintNext kNext jNext iPrintPrint "n="; nEnd Sub6.Private Sub Form_Click()Dim i%, j%, n%, k%For i = 1 To 9For j = 0 To 9For k = 0 To 9n = i * 100 + j * 10 + kIf n = i ^ 3 + j ^ 3 + k ^ 3 Then Print n,Next kNext jNext iEnd Sub习题5参考答案5.2 单选题1 A2 B3 C4 C5 D6 D7 A8 C9 D 10 A 11 A 12 B 5.3 填空题1.False2.Caption3.0 ListCount-14.Print List1.List(3)5.Combo1.ReMoveItem 36.LargeChange7.Timer8.5009.Shape10.Borderstyle5.4 程序设计题1.Dim op1, op2, result As SingleDim operator As IntegerPrivate Sub Command1_Click(Index As Integer)If Index >= 0 And Index <= 10 ThenIf txt1.Text = "" Thentxt1.Text = CStr(Index + 1)Elsetxt1.Text = txt1.Text + CStr(Index + 1) End IfEnd IfIf Index >= 12 And Index <= 15 Thenop1 = CDbl(txt1.Text)operator = Indextxt1.Text = ""End IfIf Index = 11 Thenop2 = CDbl(txt1.Text)Select Case operatorCase 12result = op1 + op2Case 13result = op1 - op2Case 14result = op1 * op2Case 15result = op1 / op2End Selecttxt1.Text = CStr(result)End IfEnd SubPrivate Sub Command2_Click()op1 = 0op2 = 0result = 0txt1.Text = ""End SubPrivate Sub Command3_Click()EndEnd Sub2.Private Sub chkBold_Click()If chkBold.Value = vbChecked ThenTxt1.FontBold = TrueElseTxt1.FontBold = FalseEnd IfEnd SubPrivate Sub chkUnderline_Click()If chkUnderline.Value = vbChecked Then Txt1.FontUnderline = TrueElseTxt1.FontUnderline = FalseEnd IfEnd SubPrivate Sub Opt18_Click()Txt1.FontSize = 18End SubPrivate Sub Opt22_Click()Txt1.FontSize = 22End Sub3.Private Sub Form_Load()List1.AddItem "上海"List1.AddItem "北京"List1.AddItem "天津"List1.AddItem "广东"List1.AddItem "辽宁"List1.AddItem "陕西"List1.AddItem "河南"List1.AddItem "深圳"List1.AddItem "四川"List1.AddItem "重庆"End SubPrivate Sub List1_DblClick()For i = 0 To 9If List1.ListIndex = i ThenList2.AddItem List1.List(i)List1.RemoveItem iEnd IfNext iEnd Sub4.Private Sub Command1_Click()Timer1.Enabled=TrueTimer1.Tag=Text1.Text*60Frame1.Caption=“现在开始倒计时”End SubPrivate Sub Timer1_ Timer()Timer1.Tag=Timer1.Tag-1If m<0 ThenTimer1.Enabler=FalseMsgBox“预定的时间到了!”,0,“倒计时”Frame1.Caption=“请输入计时的分钟数:”Text1.Text=0Exit SubEnd Ifn1=Format(m Mod 60,“00”)n2=Format(m \ 60)Mod 60,“00:”)n3=Format(m \ 3600),“00:”)Text1.Text=n3&n2&n1End Sub习题6参考答案6.1单选题1.C2.C3.B4.B5.B6.D7.B8.B9.A 10.A6.2 填空题1.Option Base 12.变体类型3.preserve (注意:教材上面写成perserve, 教材错误)4.Variant变体类型5.96.相同,索引号7.1).通过复制粘贴的方式创建控件数组2).在设计时候添加多个同类型的类型控件,然后通过“属性”窗口将这些控件的名称改为相同,并把Index属性设为不同的下标值。
VB课本习题答案第五章课后习题答案
第5章数组与记录5.1 填空题1.若要定义一个包含10个字符串元素,且下界为1的一维数组s,则数组说明语句为( Dim s(1 To 10) As String )。
2.若要定义一个元素为整型数据的二维数组a,且第一维的下标从0到5,第二维下标从-3到6,则数组说明语句为( Dim a(0 To 5,-3 To 6) As Integer )。
3.如果数组元素的下标值为实数,则VB系统会按(四舍五入原则)进行处理。
4.数组元素个数可以改变的数组称为(可调数组);数组元素可以存放不同类型数据的数组称为(可变类型数组)。
5.数组刷新语句用于(清除指定数组内容)。
若被刷新的数组是数值数组,则把所有元素置(0);若被刷新的数组为字符串数组,则把所有元素置(空字符串)。
6.设有表格控件grd1,若设置grd1的第2行第5列的单元格为当前活动单元格,使用的语句为(grd1. Row =2 )和(grd1.Col=5 )。
7.要使表格控件grd1的当前活动单元格显示字符串“姓名”,使用的语句是(grd1.Text=“姓名”)。
8.建立一个具有10行10列的表格控件grd2,需使用的语句为(grd2. Row =10 )和(grd2.Col=10 )。
9.在程序的运行中,对表格控件grd1的某些列的数据按降序并且区分大小写排序,使用的语句是(grd1.Sort=8 )。
10.控件数组是由一组类型和(名字)相同的控件组成,共享(同一个事件过程)。
11.控件数组中的每一个控件都有惟一的下标,下标值由( Index )属性指定。
12.建立控件数组有两种方法:(在设计阶段通过相同Name属性值来建立)和(在程序代码中使用Load方法)。
5.2 选择题1.下列一维数组说明语句错误的是( d )。
a) Dim b(100) AS Double b) Dim b(-5 To 0) AS Bytec) Dim b(-10 To –20) AS Integer d) Dim b(5 To 5) AS String2.若有数组说明语句为:Dim a(-3 To 8),则数组a包含元素的个数是( d )。
VB教材习题解答(部分)20090318更新第1-9章
第1章 Visual Basic6.0概述1.简述Visual Basic 6.0的安装过程。
2.简述Visual Basic 的功能特点。
3.Visual Basic 6.0 包括几个版本?它们之间有何差别?4. Visual Basic是一种面向对象的可视化程序设计语言,它采用的编程机制是什么?答:采用的是事件驱动的编程机制。
5.如何打开或关闭窗体窗口、代码窗口?补充1:Visual Basic视图菜单中包括哪些主要内容?其快捷键是什么?答:代码窗口、对象窗口(Shift+F7)、对象浏览器(F2)、立即窗口(Ctrl+G)、工程资源管理器(Ctrl+R)、属性窗口(F4)、窗体布局窗口、工具箱、工具栏(编辑、标准、窗体编辑器)等。
补充2.写出标准工具栏中下列按钮的名称(自左至右)。
答:左边组:添加Standard EXE 工程、添加窗体、菜单编辑器、打开工程、保存工程;右边组:工程资源管理器、属性窗口、窗体布局窗口、对象浏览器、工具箱、数据视图窗口、Visual Component Manager。
第2章 Visual Basic 程序设计概述1.如何在当前窗体中创建和删除一个对象?举例说明。
2.什么是对象的属性、事件和方法,它们对设计VB程序有什么作用?3.如何设置对象的属性?举例说明。
答:方法一:设计阶段表静态修改,例如,在标签Label1的属性窗口中找到Caption 属性,将其缺省值Label1修改为“姓名”;方法二:程序中代码修改,例如,Label1.Caption="姓名"。
值得注意的是:名称(name)属性,只能表态修改,不能用代码修改。
还有一些也有这样的属性。
4.建立一个对象后,每个属性都有一个默认值,Name属性和Caption属性的默认值相同,它们有什么区别?能否用代码修改Name属性?答:Name属性在程序中对象的唯一标识,不能用代码修改;Caption属性用于显示对象的标题文字,可以在程序中用代码修改。
vb程序设计教程课后答案与实验题答案(第三版)
习题一答案在教材上找。
习题二1.对象指现实世界中的实体。
每个对象有自己的特征(属性)、行为(方法)和发生在该对象上的活动(事件)。
类是对同一种对象的集合与抽象。
类包含所创建对象的属性数据,以及对这些数据进行操作的方法。
封装和隐藏是类的重要特性,将数据结构和对数据的操作封装在一起,类的内部实现细节对用户来说是透明的。
VB工具箱中的可视图标是VB系统设计好的标准控件类。
通过将控件类实例化,得到真正的控件对象。
在窗体上画一个控件,就将类转换为对象,创建了一个控件对象。
VB中常用的对象是控件。
此外,VB还提供了系统对象。
窗体是个特例,它既是类也是对象。
当向一个工程添加一个新窗体时,实质就由窗体类创建了一个窗体对象。
对象的三要素:属性、事件和方法。
属性:存放对象的数据(决定对象外观及功能)对象属性的设置方法:在设计阶段,利用属性窗口直接设置属性值;程序运行时,通过语句[对象名.]属性名=属性值。
若属性只能在设计阶段设置,在程序运行阶段不可改变,称为只读属性。
事件:发生在对象上的事情。
同一事件,对不同的对象,会引发不同的反应。
事件过程:应用程序处理事件的步骤。
应用程序设计的主要工作就是为对象编写事件过程的代码。
方法:面向对象的程序设计语言,为程序设计人员提供了一种特殊的过程和函数。
方法是面向对象的,调用时一定要指明对象。
2.窗体和控件具有的基本属性“(1) Name属性:名称所创建的对象名称,在程序中引用。
(2) Caption属性:标题该属性决定了对象上显示的内容。
(3) Height、Width、Top和Left属性决定对象的大小和位置。
(4) Enabled 属性:对象是否允许操作(5) Visible 属性:对象是否可见(6) Font 属性组:文本的外观FontName字体、FontSize大小FontBold粗体、FontItalic斜体FontStrikethru 删除线FontUnderline 下划线(7) ForeColor属性:前景颜色(8) BackColor属性:背景颜色(9) MousePointer属性:鼠标指针类型, 设置值范围0~15,由系统指定。
vb课后习题参考答案
vb课后习题参考答案第一章习题参考答案一、填空题1、对象事件驱动2、编译运行模式解释运行模式二、简答题1、简述VB的特点。
答:①可视化的程序设计方法②面向对象的程序设计思想③事件驱动的编程机制④结构化的程序设计语言⑤高度的可扩充性⑥强大的数据库访问能力⑦支持动态数据交换⑧支持对象链接与嵌入2、简述VB的安装过程。
答:①向光驱中放入VB安装光盘;②计算机将运行自动安装程序,若没有,执行VB目录下的Setup.exe;③根据提示逐一回答问题,并点击“下一步”;④点击“完成”;2、如何启动VB。
答:三种方法:①单击“开始”按钮,选择“程序”菜单下的“Microsoft Visual Basic 6.0 中文版”菜单项并单击;②双击桌面上的VB6.0快捷图标;③在“开始”菜单的运行对话框中输入命令来启动VB;第二章习题参考答案一、选择题:1-10、DCACD BCBBC11-20、BADCA BBAAB21-29、AACBB CDDC二、填空题1.窗体、控件2.属性值3.属性窗口设置、代码窗口设置4.事件过程5.对象名、下划线、事件名6.Form_Click第三章习题参考答案一、选择题1、B2、C3、A4、B5、A6、C7、C二、填空题1、11字符型、字节型、整型、长整型、单精度型、双精度型、货币型、逻辑型、日期型、对象型、变体型。
String、Byte、Integer、Long、Single、Double、Currency、Boolean、Date、Object、Variant2、双引号(英文)、#3、ASCII、1、25、&、+、+6、Now()、Time、日期型三、解答题1、(3)2、(1 )3、(1)常量(关键字)(2)字符型常量(3)逻辑型常量(4)变量(5)字符串常量(6)变量(7)字符串常量(8)变量(9)日期型常量(题目应是#11/16/1999#)(10)数值型常量(单精度)4、315、(1)(1+y/x)/(1-y/x) (2)x^3+3*x*y/(2-y)(3)sqr(abs(a*b-c^3)) (4)sqr(s*(s-a)*(s-b)*(s-c))6、7、(1)13 (2)17(3)#1999-11-12# (4)zxy123ABC8、(1)19 (2)8.16666666666667(3)5.25 (4)29、(1)-4 (2)2 . 82842712474619 (3)-3 (4)49 (5)”hello” (6)He7)16 (8)“-459.65” (9)510、(4)11、(2)12、(4)第四章习题参考答案一、选择题:1—7: DAABBCD二、填空题1.500.00%2.将字号扩大为原来的二倍3. B三、编程题(略)1.文本框、标签和命令按钮的名称分别为text1、label1、command1Private Sub Command1_Click()Label1.caption=text1.textCommand1.caption=text1.textEnd Sub2.单价、数量、折扣和应付款对应的文本框的名称分别为:text1、text2、text3和text4,计算和清除命令按钮的名称分别为:command1和command2。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
中华IT学习网 官方总站:圣才学习网
第1章程序设计语言与程序设计
1.1填空题
1.程序设计语言是由()、()和()构成的指令系统。
答案:字、词、语法规则
2.程序设计语言从机器执行角度可以分成()和()两大类。
VB语言是一种()程序设计语言。
答案:低级语言、高级语言、事件驱动
3.程序是解决特定问题的指令序列,主要完成()和()两方面工作。
答案:
4.使用可视化程序设计语言设计应用程序,主要完成()和()两部分工作。
答案:数据描写、数据处理
5.源程序中的错误一般分为()错误、()错误和()错误等三种。
答案:编译、运行、逻辑
6.建立一个VB工程要做的工作包括()。
答案:需求分析、界面设计、设计程序、上机调试程序和保存程序
1.2 选择题
1.把a和b的乘积写成ab的错误属于()错误。
a) 编译 b) 运行 c) 逻辑 d) 编译和运行
答案:a
2.用户在什么时候都可以按()键来查看与当前进行的工作相关的帮助。
a)Held b)F1 c)ESC d)F10
答案:b
3.窗体文件的扩展名为()。
a).vbp b).bas c).exe d).frm
答案:d
4.指示一个窗体位置的值是窗体的()。
a)对象 b)事件 c)属性 d)方法
答案:c
5.下面选项中不能运行VB程序的操作是()。
a) 双击窗体 b) 单击“启动”按钮图标
c) 从菜单栏运行菜单中选“全编译执行”菜单命令 d) 按F5键
中华IT学习网 官方总站:圣才学习网
中华IT学习网 官方总站:圣才学习网 答案:a
1.3 解答题
1.低级语言和高级语言的各自特点是什么?
答:低级语言包括机器语言和汇编语言。
它们都包含一些指令。
机器语言指令是由0和1构成,它能直接被机器识别和执行。
汇编语言是由一些特定的助记符代表指令,用汇编语言编写的程序只需经过简单的翻译就可以被机器执行。
低级语言的特点是程序执行的速度快,运行效率高,但难学、难记、难阅读,程序设计难度大,非专业人员难以涉足。
而高级语言是由人们易于接受的、接近于人类自然语言的指令构成。
它易学,便于记忆,程序设计方便。
2.什么是数据描述和数据处理?
答:数据描述是指把需要处理的信息描述成计算机可以接受的数据形式。
例如,把信息描述为数值、文字、图形和声音等。
数据处理是指对数据进行输入输出,对输入到计算机内的数据进行某种处理或计算,对输入的数据或计算处理结果进行存储和维护等。
3.源程序的翻译方式有哪两种,简述它们的工作过程。
答:源程序的翻译方式有两种:解释方式和编译方式。
所谓解释方式就是由计算机专业人员事先编好一个解释程序构成一个解释系统存放到计算机内,当把高级语言程序输入到计算机内并运行程序之后,解释系统就会对它进行解释,解释一句执行一句。
也就是说,边解释边执行。
这与日常生活中的口译类似。
所谓编译方式就是由计算机专业人员事先编好一个编译程序构成一个编译系统存放到计算机内,当把高级语言程序输入到计算机内并运行程序之后,编译系统就把它整个翻译为目标代码程序,然后执行目标代码程序。
这与日常生活中的笔译类似。
4.一个好程序的基本要求是什么?
答:一个好程序的基本要求是正确、易读和程序运行效率高。
5.Visual BASIC 集成开发环境的主窗口由哪些部分构成?各自的主要功能是什么?
答:参见教材第1章1.3节。
6.简述在VB的环境下,对象、属性、方法、事件和事件驱动程序的概念,且用例子进行说明。
答:在VB的环境下,对象是系统中的基本运行实体,它封装了数据和操作。
例如,窗体、命令按钮、标签、文本框等都是对象。
属性是对象的性质或状态特征。
例如,窗体的Caption(标题)、BackColor(背景颜色)、Height(高度)和Width(宽度)等都是窗体的属性。
方法是针对对象的一些操作,用于完成某种特定功能。
例如,Print(打印)方法、Show (显示窗体)方法和Move(移动)方法等。
事件是在对象上可能发生的事情,它是VB系统预先定义好的,能够被对象识别的动作。
例如,Click(单击)事件、DblClick(双击)事件和Load(装载)事件等都是窗体的事件。
当事件由用户或VB系统触发时,对象会感受到该事件并对该事件作出响应,响应某个事件后所执行的程序就是事件驱动程序。
事件驱动程序有时也称为事件过程。
例如,
中华IT学习网 官方总站:圣才学习网
中华IT学习网 官方总站:圣才学习网
Private Sub Command1_Click()
End
End Sub
就是一个事件驱动程序。
单击命令按钮Command1就会执行该事件驱动程序。
执行该事件驱动程序就会执行End语句,执行End语句就会结束程序的执行。
7.总结一下使用VB开发一个应用程序的过程。
答:使用VB开发一个应用程序的过程可以分为如下几步:
1)需求分析。
对要解决的实际问题分析,进行数据描述和功能描述。
2)建立用户界面上的控件对象,即用户界面设计。
根据所开发应用程序的功能和用户的特点进行用户界面设计,包括建立窗体和在窗体上建立各种控件对象。
3)对用户界面上控件对象的属性进行设置。
4)编写控件对象的事件驱动程序。
5)运行、调试和保存程序
8.下面程序是什么事件驱动程序?如何执行该事件驱动程序?执行的结果如何?
Private Sub Command1_Click()
Print "欢迎你使用VB!"
End Sub
答:下面程序是单击命令按钮Command1事件过程。
VB启动成功后,先在窗体上建立命令按钮Command1和输入单击命令按钮Command1的事件驱动程序,然后单击工具栏上的启动按钮。
此时,屏幕出现用户界面,单击命令按钮Command1就会执行该事件过程。
执行的效果是在窗体上显示“欢迎你使用VB!”。
中华IT学习网 官方总站:圣才学习网。