Visual Basic程序设计课程学习指导书_第1页
Visual Basic程序设计课程学习指导书_第2页
Visual Basic程序设计课程学习指导书_第3页
Visual Basic程序设计课程学习指导书_第4页
Visual Basic程序设计课程学习指导书_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 郑州大学现代远程教育Visual Basic程序设计课程学习指导书柳宏川 编第一章 Visual Basic程序设计概述(一)本章学习目标理解程序设计语言的概念,VB的功能和作用。熟练掌握Visual Basic的启动和退出方法,学会使用IDE集成开发环境中标题栏、菜单栏、工具栏和窗体窗口、属性窗口、资源管理器窗口和代码窗口,了解工具箱窗口的作用。(二)本章重点、要点VB的启动和退出、工程的概念、VB集成开发环境的操作:窗口和工具栏的作用。(三)练习题1退出Visual Basic的快捷键是_。 A. Ctrl+Q B. Shift+Q C. Alt+Q D. Ctrl+Alt+Q2窗体设计

2、器是用于设计_。 A应用程序的界面 B. 对象的属性 C应用程序的代码 D. 窗体的代码3启动Visual Basic后, VB为用户建立的第一个窗体是_。 AForm1 B. Form C窗体1 D. 窗体4启动Visual Basic后, VB为用户新建立的工程的名字是_。 A窗体1 B. 工程1 C窗体 D. 工程5工程资源管理器窗口包含的文件类型有_种。 A1 B. 2 C3 D. 46如果VB环境中缺少某个窗口,一般应从主菜单_的下拉菜单中找到相应的激活命令。 A编辑 B. 文件 C调试 D. 视图7能够通过标准工具栏打开的窗口是_。 A代码窗口 B. 设计器窗口 C属性窗口 D.

3、窗体布局窗口8窗体文件的扩展名_。 A.bas B. vbp C.exe D. frm9工程文件的扩展名_。 A.com B. vbp C. exe D. bas10Visual Basic的编程机制是_。 A面向过程 B. 面向对象 C事件驱动 D. 可视化第二章 VB可视化编程基础(一)本章学习目标理解结构化程序设计的思想,面向对象的程序设计。掌握类、对象、属性、方法、事件和控件等概念。熟练掌握创建一个VB应用程序的过程,能运用IDE中的工具使用控件及对控件的事件编程,理解事件驱动的思想。(二)本章重点、要点面向对象的有关名词,使用VB创建一个应用程序的全过程,各种窗口的使用,基本控件以及

4、方法、属性的使用。(三)练习题1 使用VB建立一个应用软件的全过程有哪些步骤?。2 保存VB文件,至少要保存几个文件?应先保存什么文件?3 工程文件,窗体文件,标准模块文件,类模块文件的文件名的扩展名分别是什么?4 用代码对窗体中的控件设置属性值,这些代码应该放在什么事件中?5 运行程序有几种方法?各是什么?6 从代码窗口返回到设计窗体窗口(VB集成开发环境)有几种方法?7输入代码忘记属性值时怎么办?8在代码窗口输入代码时,输入控件的名称及圆点后,出现下拉列表后,如何输入方法或属性?9窗体、标签、命令按钮、文本框的默认属性分别是什么?10在输入代码时,如何从属性列表和方法列表中快速输入属性及方

5、法? 第三章 VB语言基础(一)本章学习目标本章是VB编程的基本要求,一定要熟练掌握基本数据类型、常量、变量、运算符、表达式等基本概念和规则。学会并能运用一些常用函数。(二)本章重点、要点编写VB程序的基本要求,记住并熟练掌握基本数据类型及对应的关键字,常量和变量的定义与使用、各类运算符的写法和使用、VB表达式的规则。一些常用的内部函数要学会使用。(三)练习题1. VB定义了哪几种数据类型?变量有哪几种数据类型?常量有哪几种数据类型?2. 如果希望使用变量x来存放数据765432.123456,应该将变量x声明为何种类型?3. VB共有几种表达式?根据什么确定表达式的类型?4. 在VB中,对于

6、没有赋值的变量,系统默认值是什么?5. VB算术表达式a/(b+c/(d+e/Sqr(f)的数学表达式是什么?6. 函数Int(Rnd(0)*10)属于哪个范围内的整数?7. 顺序结构的特点是什么?8. Rem和单撇号有什么不同?9. 试述Tab()和Space()两个函数的区别?10. 试述Int()和Fix()两个函数的区别?第四章 VB控制结构(一)本章学习目标本章主要讲述VB的三种基本语句结构:顺序结构、选择结构、循环结构。这是VB编程的基本要求,也是本门课程的重点内容。要求熟练掌握这三种基本结构的语法(包括各种变化),能准确写出各种语句结构执行的步骤,能熟练运用该语句进行编程,不出现

7、语法错误。同时,应熟练掌握一些常用的算法。常用算法:累加、连乘 、求素数、穷举法、递推法和最大、小值的求法等。(二)本章重点、要点VB的顺序结构、选择结构、循环结构的语法和常用算法。在VB中,实现循环的语句有三种:For-Next循环(计数循环)、While-Wend循环(当循环)和Do-Loop循环(Do循环)。在这三种循环语句中,进行不同的组合,可以形成多种格式的语句。(三)练习题1通过键盘输入若干数,当输入0时结束输入(0不参加计算),计算并输出这些数的平均值。2从1开始计算奇数的平方倒数之和,要求最后一项刚好小于0.0001。3输出如图所示的图形。4输入30个字符,统计其中字符A,B,

8、C的个数(不分大小写),连续输入三个字符Q,则结束程序。5求1!+2!+3!+n!6求出Fibonacci(斐波那契)数列的前20项。Fibonacci(斐波那契)数列的规律是:前2项为0和1,其余各项为该项前2项之和,即0,1,1,2,3,5,8,13。7打印九九乘法表。8输入两个正整数,求其最小公倍数和最大公约数。9找出1000以内所有的个位数为3素数,并统计其个数。10对于下面所示的分数序列:,求出该序列的前10项的和,并打印出第10项。第五章 数组和自定义类型(一)本章学习目标本章理解VB的数组的概念及数组的作用、熟练掌握数组的声明方法、VB数组的基本操作、能运用数组进行编程,掌握一些

9、常用算法的编程思想,学会选择法和起泡排序法。(二)本章重点、要点VB的数组的概念、VB静态数组及声明、VB动态数组及声明、VB数组的基本操作、选择法排序和起泡法排序,利用数组进行编程的一些常用算法。(三)练习题1将一个一维数组a(9)中各元素值按行的顺序放入二维数组b(33)。2用随机数函数产生10个40内的整数,使用选择排序法从小到大排序3生成下列二维数组,且按下列格式输出。 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 184将一个一维数组反序放置。例如: a=(67,89,76,98,66), 反序放置后,a=(66,98,76,89,67)5有一个mn矩阵

10、,找出最大元素值及其最大元素值所在的行、列位置。6将矩阵m(n,n)主对角线和次对角线上的元素置为1,其余元素置为0。7将一个二维数组a(m,n)按行顺序将每个元素放入一个一维数组b(mn)。8将用 inputbox()输入的一个数插入到一个按递增排列的有序数列中,插入后该数列仍然有序。9有一个无序数组,删去与第一个元素值相同的其他元素值,删除后其他元素的值前移。 第六章 过 程(一)本章学习目标 本章熟练掌握函数过程的定义与调用,熟练掌握子过程的定义与调用,学会参数传递方式:传值和传址,理解变量、过程的作用域,理解递归定义和思想,能运用递归进行编程。(二)本章重点、要点函数过程和子过程的定义

11、与调用,参数的传递方式:传值和传址,变量、过程的作用域,递归等概念。(三)练习题1函数过程有什么不足?2子过程与函数过程区别有哪些?3函数的参数传递时,什么是传址方式?4函数的参数传递时,什么是传值方式5什么是变量、过程的作用域?6过程的作用域有哪几个级别?其对应的关键字是什么?7在VB中,变量有哪些级别?如何定义?8什么是递归?请举例说明。9设计递归时应遵循哪些原则?第七章 用户界面设计(一)本章学习目标理解控件的作用。能运用常用控件进行编程。(二)本章重点、要点VB中可使用的控件分为三类:标准控件、ActiveX控件和可插入对象。标准控件(也称内部控件),VB启动后出现在工具箱中的控件,共

12、有20个,既不能添加,也不能删除。这些控件由VB的.exe文件提供。AcitveX控件,在以前的版本中称为OLE控件或定制控件,是AcitveX部件的一部分,AcitveX部件是可以重复使用的编程代码和数据,是由用AcitveX技术创建的一个或多个对象所组成。AcitveX部件通常分为四种:AcitveX控件、AcitveX DLL、AcitveX EXE和AcitveX文档。AcitveX部件是扩展名为.OCX的独立文件,通常存放在Windows的system文件夹中。使用AcitveX控件之前必须加载。大多数AcitveX控件的属性可以简单地在其属性页中设置。可插入对象是指Windows应

13、用程序的对象,也可以添加到工具箱中,具有与标准控件类似的属性,可以同标准控件一样使用。单选按钮和复选框、框架、列表框和组合框、滚动条和Slide控件、时钟、ProgressBar控件、UpDown控件、Animation控件、SSTab控件、鼠标器和键盘(三)练习题1. VB中可使用的控件分为哪几类?2. 框架有什么作用?3. 列表框的作用是什么?4. 组合框有哪几种类型?5. 时钟控件的作用如何?6. 鼠标事件有哪些?7. 键盘事件有哪些?各自的作用如何?8. Animation控件有什么用处?9. 怎样设置鼠标光标的形状?10. SSTab控件的Click事件过程有什么特点?第八章 数据文

14、件(一)本章学习目标学会文件的概念,学会文件的作用,学会文件的分类,熟练掌握文件的读写操作方法、了解并能运用常用的文件操作语句和函数。熟练掌握用文件进行数据存储的方法。(二)本章重点、要点文件的概念,文件的作用,文件的分类,文件的读写操作方法、常用的文件操作语句和函数。(三)练习题1什么是文件?2根据访问模式,文件可分为哪些种类?请说出其特点。3若要对文件进行访问,需要经过哪几个步骤?4打开一个顺序文件时,有哪几种打开的模式?都有什么作用?5读顺序文件时,有哪几种命令可以使用?命令的格式和作用各是什么?6LOF()和EOF()都有什么作用?7已知有一个数据文件data.dat,请编写程序将da

15、ta.dat中的数据复制到文件student.dat中去。8已知一个学生信息的文本文件为student.dat,学生信息包括:姓名(字符型),专业(字符型),年龄(整型),分数(整型)编写程序,找出其中分数最高的和分数最低的学生并输出其记录到文件HL.TXT中去。9已知一个学生信息的文本文件为student.dat,学生信息包括:姓名(字符型),专业(字符型),年龄(整型),分数(整型)编写程序,统计出其中不及格的学生人数并输出。10已知一个学生信息的文本文件为student.dat,学生信息包括:姓名(字符型),专业(字符型),年龄(整型),分数(整型)编写程序,查找姓名为“王军”的学生并输

16、出其记录。参考答案第一章 Visual Basic程序设计概述1.C 2. A 3. A 4. B 5. D 6. D 7. C 8. D 9. B 10. C第二章 VB可视化编程基础1具体过程如下(1)在窗体上建立用户窗口(界面)对象。(2)分别对对象设置属性。(3)分别对对象事件的过程编程且完成代码输入。(4)运行程序和调试程序。(5)保存程序。2至少保存2个文件,先保存窗体文件,后保存工程文件。3.vbp, .frm, .bas, .4应该放在窗体装入(Form_Load)事件中5 三种:方法一是执行工具栏中的启动按钮;方法二是选取菜单中的“运行/启动”命令;方法三是直接按F5键。6至

17、少5种方法:点击窗体窗口;选择菜单栏的viewobject; shift+F7; 点击资源管理器中的窗体按钮;单击工程资源管理器中的窗体名称(如:form1)。7在代码窗口输入代码时,控件的名称及圆点输入后,系统自动出现属性及方法的下拉列表,可以帮助使用者快速输入。8输入方法或者属性关键字的首字母进行初选,再用鼠标或者光标键细选,然后双击鼠标左键或者单击空格键。9标签、命令按钮、文本框、图形图像框的默认属性分别为:caption、caption、text和picture。10可以先输入属性或方法的首字母,然后找到需要的属性及方法并选择,用鼠标双击或击空格键即可完成输入。第三章 VB语言基础1.

18、 VB6.0定义了13种数据类型,分别是整数、长整数、单精度浮点型、双精度浮点型、货币型、字节型、变长字符串、定长字符串、布尔型、日期型、对象型、可变类型(数值)、可变类型(字符)。变量的数据类型有:数值型(整型、长整型、单精度浮点型、双精度浮点型、货币型和字节型)、字符串(变长字符串和定长字符串)、布尔型、日期型、对象型、可变数据类型(数值和字符)。常量的数据类型有:字符串常量、数值常量(整型、长整型、单精度浮点型、双精度浮点型、货币型和字节型)、布尔常量、日期常量。2. 应该使用双精度数Double类型。3. VB有5种类型的表达式,分别是:算术表达式、字符串表达式、关系表达式、布尔表达式

19、和日期表达式,VB根据表达式的运算符来确定表达式的类型。4. 在VB中,当使用声明语句建立一个变量后,系统自动将数值类型的变量赋初值0,变长的字符串被初始化为一个零长度的字符串(),而定长的字符串则用空格填充。Variant变量被初始化为Empty。将布尔型的变量初始化为False。5. 写成的数学表达式为6. (0,10)7. 顺序结构是一种线性结构,在这种结构中,各操作块按照各自某种顺序依次执行。8. Rem命令及命令后的说明文字要求独占一行,Rem和注释文字间一定要加一个空格,如果非要使用Rem命令将注释语句写在某条语句后,则需在Rem前使用英文“:”号;而单撇号没有上述限制。9. Ta

20、b()函数是绝对定位函数,总是从左边界开始;Space()函数能从当前输出位置起输出若干空格(形成一段空距)。Fix(x)函数无论对正数或负数都是去掉小数部分,取整数部分(符号不变),如:Fix(9.1)=Fix(9.9)=9,Fix(-9.1)=Fix(-9.9)=-9;而Int(x)函数返回的是不超过x的最大整数,如:Int(9.1)=Int(9.9)=9,Int(-9.1)=Int(-9.9)=-10。第四章 VB控制结构1Private Sub Command2_Click()Dim Sum As Single, Count As Integer, Val As SingleSum =

21、 0Count = -1Val = 1While Val 0 Val = InputBox(请输入一个数: & Chr(13) & Chr(10) & 输入0结束程序!) Sum = Sum + Val Count = Count + 1WendIf Count 0 ThenPrint While-Wend 循环:,共输入了; Count; 个数,平均值为:; Sum / CountEnd IfEnd Sub2Private Sub Form_Click()Dim N as Integer,Sum as Single,Term as SingleN = 1Sum = 0DoTerm = 1 /

22、 (N * N)Sum = Sum + TermN = N + 2Loop Until Term 0.0001Print 运算结果为:; SumPrint 最后一项的值为:; TermEnd Sub3Private Sub Command1_Click()Print Tab(18); 双循环的结果For i = 1 To 10 Print Tab(25 - i); For j = 1 To 2 * i - 1 Print *; Next j Print Next iEnd Sub思考: 代码段中倒数第三行的语句Print的作用是什么? 语句Print Tab(25 - i);的作用是什么?特别

23、体会其中的25的含义。Private Sub Command2_Click()Print Tab(18); 单循环的结果For i = 1 To 10 Print Tab(25 - i); String(2 * i - 1, *)Next iEnd Sub双循环方式中的内循环被字符串函数String(2 * i - 1, *)所替代。对于字符串函数,如果能熟练掌握,对程序设计具有很大的帮助。4Private Sub Command1_Click()Dim ACount As Integer, BCount As Integer,Dim CCount As Integer, QCount As

24、IntegerDim CH As String * 1ACount = 0BCount = 0CCount = 0QCount = 0For I = 1 To 30CH = InputBox(请输入一个字符! & Chr(13) & Chr(10) + 连续输入三个字符Q,可结束程序, 字符统计)CH = UCase(CH)If CH = Q Then QCount = QCount + 1 Else QCount = 0If QCount = 3 ThenMsgBox 连续输入了三个字符Q,结束输入, , 注意Exit ForEnd IfSelect Case CHCase AACount

25、= ACount + 1Case BBCount = BCount + 1Case CCCount = CCount + 1End SelectNext IText1.Text = ACount: Text2.Text = BCount: Text3.Text = CCountEnd Sub5Private Sub Form_Click() Dim N As Integer, I As Integer N = InputBox(请输入一个数正整数N:) factorial = 1 Sum = 0 For I = 1 To N factorial = factorial * I Sum = Su

26、m + factorial Next I Print 小于自然数; N; 的自然数阶乘之和为:, SumEnd Sub6Private Sub Form_Click() a = 0 b = 1 Print a, b, For i = 1 To 9 a = a + b b = a + b Print a, b, If i Mod 2 = 1 Then Print Next iEnd Sub运行结果见图:7Private Sub Form_Click() For i = 1 To 9 For j = 1 To i Print Tab(11 * (j - 1); j; *; i; =; Str(i

27、* j); Next j Print Next iEnd Sub运行结果如下图所示:8编写了两个按扭的事件程序。“求最大公约数”按扭的过程为:Dim A As Integer, B As Integer, N As Integer, M As Integer, R As IntegerPrivate Sub Command1_Click() M = Val(Text1.Text) N = Val(Text2.Text) A = M B = N If N = 0 Then Exit Sub R = M Mod N Do While R 0 M = N N = R R = M Mod N Loop

28、 Label3.Caption = NEnd Sub“求最小公倍数”按扭的过程为:Private Sub Command2_Click() If N 0 Then Label4.Caption = A * B / NEnd Sub运行界面可参阅图。说明:该设计运行时,如果要求最小公倍数,需要先按“求最大公约数”的按扭,求出最大公约数后方可按“求最小公倍数”的按扭。9窗体的Click事件过程为:Private Sub Form_Click() n = 0 For i = 3 To 1000 Step 2 prime = 1 x = 2 m = Int(Sqr(i) While x a(j) Th

29、en i = j 保存位置,先不交换数据Next jd = a(k): a(k) = a(i): a(i) = d j 循环结束根据记下的位置交换数据Print a(k);Next kPrint a(10)End Sub3方法一:Option Base 1Private Sub Form_Load()Dim m&(4, 4), i%,j%For i = 1 To 4For j = 1 To 4m(i, j) =(i - 1) * 4 + j + 2Print Spc(5 - Len(Str(m(i, j); m(i, j);Next j PrintNext iEnd Sub方法二:Option

30、 Base 1Private Sub Form_Load()Dim m&(4, 4), i%,j,n%n = 3For i = 1 To 4For j = 1 To 4m(i, j) = nPrint Spc(5 - Len(Str(m(i, j); m(i, j);n = n+1Next j PrintNext iEnd Sub4程序如下:Option Base 1Private Sub Form_Load()Dim a(), ba = Array(2, 3, 5, 7, 9, 15, 17, 19, 22)n = UBound(a)For k = 1 To n / 2b = a(k)a(k

31、) = a(n + 1 k)a(n - k + 1) = bNext kFor k = 1 To nPrint a(k);Next kEnd Sub5程序如下:Option Base 1Private Sub Form_Load()Dim a(), m%, n%, i%, j%m = InputBox(input m)n = InputBox(input n)ReDim a(m, n)RandomizeFor i = 1 To mFor j = 1 To na(i, j) = Int(Rnd * 100)Print a(i, j);Next j PrintNext iMax = a(1, 1)

32、h = 1: l = 1For i = 1 To mFor j = 1 To nIf Max a(i, j) Then H = i: l = jEnd IfNext jNext iPrint a(h, l); h, lEnd Sub6 程序如下:Option Base 1Private Sub Form_Load()Dim a%(), m%, i%, j%m = InputBox(input m)ReDim a(m, m)For i = 1 To m a(i, i) = 1 a(i, m - i + 1) = 1Next iFor i = 1 To mFor j = 1 To mPrint a

33、(i, j);Next jPrintNext iEnd Sub7程序如下:Option Base 1Private Sub Form_Load()Dim a%(2, 4), b%(8), i%, j%, n%n = 1For i = 1 To 2For j = 1 To 4a(i, j) = InputBox(input number)b(n) = a(i, j)n = n+1Next jNext iFor i = 1 To 8Print b(i);Next iEnd Sub8 程序如下:ption Base 1Private Sub Form_Load()Dim a(), i%, j%, k

34、%, n%a = Array(53, 59, 67, 89, 90, 95)n = (UBound(a) + 1)ReDim Preserve a(n)k = InputBox(iuput x)For i = 1 To n - 1If k a(i) Then Exit ForNext iFor j = n To i + 1 Step -1a(j) = a(j - 1)Next ja(i) = kFor i = 1 To nPrint a(i);Next iEnd Sub9程序如下:Option Base 1Private Sub Form_Load()Dim a(), i%, j%, k%, n%, kk%a = Array(66, 66, 67, 90, 87, 66, 90, 67, 66)n = UBound(a)i = 2Do While i hscore thenHname=NameHspe=SpeHage=AgeHscore=ScoreEnd IfIf scoreLscore thenLname=NameLspe=SpeLage=AgeLscore=ScoreEnd If Loop Write #2, Hname, Hspe, Hage, Hscore Write #2, Lname, Lspe, Lage, Lscore Close #1, #2End Sub9Pr

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论