版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、南通大学计算机科学与技术学院南通大学计算机科学与技术学院 鲁松鲁松计算机程序设计强化复习Visual Basic 6.0Visual Basic 6.0计算机等级考试二级(计算机等级考试二级(VBVB)培训)培训 鲁松鲁松2 2全文结构全文结构一一VB语法知识基础语法知识基础二二VB语法知识进阶语法知识进阶三三常用算法及编程技巧常用算法及编程技巧四四界面元素与程序调试界面元素与程序调试五五真题讲解真题讲解第第1 1章章 程序代码的组织方式程序代码的组织方式第第2 2章章 数据类型、常量与变量数据类型、常量与变量第第3 3章章 运算符、表达式与公共函数运算符、表达式与公共函数第第4 4章章 数组
2、数组第第5 5章章 顺序结构顺序结构第第6 6章章 选择结构选择结构第第7 7章章 循环结构循环结构第第8 8章章 过程设计过程设计第第9 9章章 文件操作文件操作第第1010章章 算法中使用的基本技巧算法中使用的基本技巧第第1111章章 数列、级数求和及矩阵运算问题数列、级数求和及矩阵运算问题第第1212章章 数组的移动、排序及查找数组的移动、排序及查找第第1313章章 因数、最大公约数与素数等问题因数、最大公约数与素数等问题第第1414章章 整数拆分、进制转换整数拆分、进制转换第第1515章章 字符运算及圆圈数问题字符运算及圆圈数问题第第1616章章 常用控件的通用属性、事件及方常用控件的
3、通用属性、事件及方法法第第1717章章 窗体窗体的通用属性、事件及方法的通用属性、事件及方法第第1818章章 重要控件重要控件第第1919章章 程序调试和程序设计程序调试和程序设计计算机等级考试二级(计算机等级考试二级(VBVB)培训)培训 鲁松鲁松3 3第第1 1章章 程序代码的组织方式程序代码的组织方式l 字符集字符集l 关键字关键字l 标识符标识符l 运算符运算符l 表达式表达式l 语句及语法规则语句及语法规则l 语义语义Print aPrint a,Print a;字符字符关键字关键字/ /标识符标识符表达式表达式语句语句过程过程模块模块程序程序计算机等级考试二级(计算机等级考试二级(
4、VBVB)培训)培训 鲁松鲁松4 4第第1 1章章 程序代码的组织方式程序代码的组织方式l用过程编程的两大好处用过程编程的两大好处lVB中过程的种类中过程的种类u事件过程事件过程系统提供的过程系统提供的过程u通用过程通用过程用户自定义过程用户自定义过程 l窗体模块窗体模块l标准模块标准模块l类模块类模块计算机等级考试二级(计算机等级考试二级(VBVB)培训)培训 鲁松鲁松5 5第第2 2章章 数据类型、常量与变量数据类型、常量与变量2.1 基本数据类型基本数据类型l 数值型数值型l 字符串型字符串型l 逻辑型逻辑型l 日期型日期型l 变体型变体型l 数据类型转换数据类型转换u 数值类型间的转换
5、数值类型间的转换u 数值类型与字符串类型的转换数值类型与字符串类型的转换u 数值类型与逻辑类型的转换数值类型与逻辑类型的转换u 字符串类型与逻辑类型的转换字符串类型与逻辑类型的转换Print True+3显示结果为显示结果为2Print “123”+100显示结果为显示结果为223Print #5/1/2000# + 3显示结果是显示结果是00-5-4类型名称类型名称表示数据表示数据存储空间存储空间取值范围取值范围整型整型Integer整型整型2个字节个字节-32,768 32,767Long长整型长整型4个字节个字节-2,147,483,648 2,147,483,647Byte字节型字节型
6、1个字节个字节0 255实型实型Single单精度浮点数单精度浮点数4个字节个字节-3.402,823E38 -1.401,298E-451.401,298E-45 3.402,823E38Double双精度浮点数双精度浮点数8个字节个字节-1.797,693,134,862,32D308 -4.940,656,458,412,47D-3244.940,656,458,412,47D-324 1.797,693,134,862,32D308Cunency货币型货币型8个字节个字节-922,337,203,685,447.580,8 922,337,203,685,447.580,7 计算机等级
7、考试二级(计算机等级考试二级(VBVB)培训)培训 鲁松鲁松6 6第第2 2章章 数据类型、常量与变量数据类型、常量与变量2.2 构造数据类型构造数据类型l 数组数组u固定大小数组固定大小数组u动态数组动态数组l 自定义类型自定义类型2.3 常量与变量常量与变量l 字面常量字面常量l 符号常量符号常量u系统内部常量系统内部常量VbRed、VbCrLf等等u用户自定义符号常量用户自定义符号常量Const Pi As Single =3.14l变量变量计算机等级考试二级(计算机等级考试二级(VBVB)培训)培训 鲁松鲁松7 7第第3 3章章 运算符、表达式与公共函数运算符、表达式与公共函数3.1
8、VB中的运算符与表达式中的运算符与表达式l 算术运算符与算术表达式算术运算符与算术表达式l 字符串连接符字符串连接符l 关系运算符与关系表达式关系运算符与关系表达式l 逻辑运算符与逻辑表达式逻辑运算符与逻辑表达式l 运算符的优先级运算符的优先级u算术运算符算术运算符 、-、*或或/、Mod、+或或-u字符运算符字符运算符 +或或&u关系运算符关系运算符 =、=、=、Is、Likeu逻辑运算符逻辑运算符 Not、And、Or、Xor、Eqv、Imp计算机等级考试二级(计算机等级考试二级(VBVB)培训)培训 鲁松鲁松8 8第第3 3章章 运算符、表达式与公共函数运算符、表达式与公共函数3.2 V
9、B中的公共函数中的公共函数l 数学函数数学函数l 字符串函数字符串函数l 类型转换函数类型转换函数l 随机函数随机函数生成某个范围内的随机整数生成某个范围内的随机整数Int(upperbound lowerbound +1)*Rnd + lowerbound)l 输入与输出函数输入与输出函数计算机等级考试二级(计算机等级考试二级(VBVB)培训)培训 鲁松鲁松9 9第第4 4章章 数数 组组4.1 数组的命名及说明数组的命名及说明l 数组的命名数组的命名l 数组的说明数组的说明4.2 数组结构与数组元素数组结构与数组元素l 数组的逻辑结构与存储结构数组的逻辑结构与存储结构l 数组元素数组元素4
10、.3 固定大小数组与动态数组固定大小数组与动态数组l 固定大小数组固定大小数组l 动态数组动态数组4.4 Erase语句语句计算机等级考试二级(计算机等级考试二级(VBVB)培训)培训 鲁松鲁松1010第第5 5章章 顺序结构顺序结构5.1 赋值语句赋值语句l 赋值语句的格式赋值语句的格式=l 不同类型数据之间的赋值不同类型数据之间的赋值l 赋值号与等号的区别赋值号与等号的区别A AB B变量变量表达式表达式逻辑型逻辑型True非非0数值型数值型False0整型整型-1True逻辑型逻辑型0False字符型字符型“True”True逻辑型逻辑型“False”False数值型数值型编译出错编译出
11、错非数值字符串非数值字符串字符型字符型对应的数值对应的数值数值字符串数值字符串计算机等级考试二级(计算机等级考试二级(VBVB)培训)培训 鲁松鲁松1111第第5 5章章 顺序结构顺序结构5.2 Print 方法、方法、Cls 方法方法l 方法调用语句的一般形式方法调用语句的一般形式.参数列表参数列表l Print 方法方法对象对象.Print p1p2例例5-7:下列程序片断的输出结果是什么?:下列程序片断的输出结果是什么?a=3 : b=5Print “12345678901234567890”Print a;bPrint a,Print bPrint aPrint bl Cls 方法、方
12、法、Clear方法方法1234567890123456789012345678901234567890 3 5 3 5 3 5 3 5 3 3 5 5 计算机等级考试二级(计算机等级考试二级(VBVB)培训)培训 鲁松鲁松1212第第6 6章章 选择结构选择结构6.1 IfThen 结构语句结构语句l 标准分支选择结构标准分支选择结构例例6-1:写出根据键盘输入的百分制学生成绩判断该学生:写出根据键盘输入的百分制学生成绩判断该学生是否及格并输出是否及格并输出“Pass”或或“Fault”。l 单分支结构单分支结构例例6-2:写出根据键盘输入的百分制学生成绩判断该学生:写出根据键盘输入的百分制学
13、生成绩判断该学生是否及格并将及格学生的成绩输出的程序片段。是否及格并将及格学生的成绩输出的程序片段。l 多分支结构多分支结构例例6-3:写出将键盘输入的百分制学生成绩转换成五分制:写出将键盘输入的百分制学生成绩转换成五分制并输出的程序片段。并输出的程序片段。e eA AB BTrueTrueFalseFalse计算机等级考试二级(计算机等级考试二级(VBVB)培训)培训 鲁松鲁松1313第第6 6章章 选择结构选择结构6.2 Select Case 结构语句结构语句l 一般形式一般形式l 测试项的形式测试项的形式例例6-4:在:在 Select Case X 结构中,描述判断条件结构中,描述判
14、断条件3X7的的测试项应该写成测试项应该写成 。A. Case 3 X7B. Case 3 X, X7C. Case Is7 , Is3 D. Case 3 To 7计算机等级考试二级(计算机等级考试二级(VBVB)培训)培训 鲁松鲁松1414第第7 7章章 循环结构循环结构7.1 DoLoop 结构语句结构语句l Do-While循环结构循环结构l Do-Until循环结构循环结构e eA AFalseFalseTrueTruee eA AFalseFalseTrueTrue“当当”型循环型循环“直到直到”型循环型循环计算机等级考试二级(计算机等级考试二级(VBVB)培训)培训 鲁松鲁松15
15、15第第7 7章章 循环结构循环结构7.2 ForNext 结构语句结构语句l 一般形式一般形式For=ToStepExit ForNextl For循环与循环与Do循环的比较循环的比较l 循环嵌套循环嵌套计算机等级考试二级(计算机等级考试二级(VBVB)培训)培训 鲁松鲁松1616第第8 8章章 过程设计过程设计8.1 Sub过程与过程与Function过程的定义与调用过程的定义与调用l Sub过程的定义过程的定义Private | Public Static Sub 过程名过程名 (参数列表参数列表)局部变量和常量声明局部变量和常量声明语句体语句体Exit SubEnd SubuSub事件
16、过程的定义事件过程的定义uSub通用过程的定义通用过程的定义计算机等级考试二级(计算机等级考试二级(VBVB)培训)培训 鲁松鲁松1717第第8 8章章 过程设计过程设计8.1 Sub过程与过程与Function过程的定义与调用过程的定义与调用l Function过程的定义过程的定义Private | Public Static Function 函数名函数名 (参数列表参数列表) As 数据类型数据类型局部变量和常量声明局部变量和常量声明语句体语句体Exit Function函数名函数名=表达式表达式End Function例例8-5:以下有关过程的说法中错误的是:以下有关过程的说法中错误的
17、是 。A. 在在Sub或或Function过程中不能再定义其他过程中不能再定义其他Sub或或Function过程过程B. 在调用过程时,与使用在调用过程时,与使用ByRef说明的形参对应的实参只能按地址传递方说明的形参对应的实参只能按地址传递方式结合。式结合。C. 递归过程既可以是递归递归过程既可以是递归Function过程,也可以是递归过程,也可以是递归Sub过程。过程。D. 在调用过程时,形参为数组的参数对应的实参只能是数组。在调用过程时,形参为数组的参数对应的实参只能是数组。计算机等级考试二级(计算机等级考试二级(VBVB)培训)培训 鲁松鲁松1818第第8 8章章 过程设计过程设计8.
18、1 Sub过程与过程与Function过程的定义与调用过程的定义与调用l Function过程与过程与Sub过程的区别过程的区别例例8-6:分别用:分别用Sub过程和过程和Function过程编写一个求过程编写一个求n!的自定义过程。的自定义过程。SubSub过程:过程:Private Sub fact(nPrivate Sub fact(n As Integer, f As Long) As Integer, f As Long)Dim i As IntegerDim i As Integerf = 1f = 1For i = 1 To nFor i = 1 To n f = f f = f
19、 * * i iNext iNext iEnd SubEnd SubFunctionFunction过程:过程:Private Function fact(nPrivate Function fact(n As Integer) As Long As Integer) As LongDim i As IntegerDim i As Integerfact = 1fact = 1For i = 1 To nFor i = 1 To n fact = fact fact = fact * * i iNext iNext iEnd SubEnd Sub计算机等级考试二级(计算机等级考试二级(VBVB
20、)培训)培训 鲁松鲁松1919第第8 8章章 过程设计过程设计8.1 Sub过程与过程与Function过程的定义与调用过程的定义与调用l Sub过程与过程与Function过程的调用过程的调用uSub事件过程的调用事件过程的调用uSub通用过程的调用通用过程的调用 Call 语句调用:语句调用:Call (实参表实参表) 将过程名作为语句调用:过程名将过程名作为语句调用:过程名 实参表实参表uFunction过程的调用过程的调用 变量变量=过程名(实参表)过程名(实参表)主调程序主调程序语句语句 n n调用过程调用过程 A A语句语句 n+1n+1End SubEnd Sub过程过程 A A
21、End SubEnd Sub计算机等级考试二级(计算机等级考试二级(VBVB)培训)培训 鲁松鲁松2020第第8 8章章 过程设计过程设计8.1 Sub过程与过程与Function过程的定义与调用过程的定义与调用l 过程的嵌套调用过程的嵌套调用l 过程调用的注意事项过程调用的注意事项u把把Sub过程名作为语句调用时,参数不需要加括号过程名作为语句调用时,参数不需要加括号uFunction过程无参时,括号不可省,其调用方法与公共函数类似过程无参时,括号不可省,其调用方法与公共函数类似u由于由于Function过程本身返回值,所以一般不使用过程本身返回值,所以一般不使用Sub通过过程的调通过过程的
22、调用方法,因为这两种方法将放弃函数名的返回值用方法,因为这两种方法将放弃函数名的返回值u若对若对Function过程的调用出现在表达式中,则其运算优先级最高过程的调用出现在表达式中,则其运算优先级最高主调程序主调程序调用过程调用过程 A AEnd SubEnd Sub过程过程 A A调用过程调用过程 B BEnd SubEnd Sub过程过程 B BEnd SubEnd Sub程序程序 A A调用过程调用过程 B BEnd SubEnd Sub程序程序 B B调用过程调用过程 A AEnd SubEnd Sub计算机等级考试二级(计算机等级考试二级(VBVB)培训)培训 鲁松鲁松2121第第8
23、 8章章 过程设计过程设计8.2 过程调用时的参数过程调用时的参数l 参数传递的限制参数传递的限制形参与实参的个数、类型和顺序必须严格匹配形参与实参的个数、类型和顺序必须严格匹配形参形参实参实参变量变量变量、常量、表达式、数组元素、对象变量、常量、表达式、数组元素、对象数组数组数组数组计算机等级考试二级(计算机等级考试二级(VBVB)培训)培训 鲁松鲁松2222第第8 8章章 过程设计过程设计8.2 过程调用时的参数过程调用时的参数l 按值传递按值传递 ByValu数组、自定义记录类型的变量、对象变量不能按值传递;常数和数组、自定义记录类型的变量、对象变量不能按值传递;常数和表达式必须按值传递
24、表达式必须按值传递u按值传递的参数,形参和实参的类型只需要相容即可按值传递的参数,形参和实参的类型只需要相容即可l 按地址传递按地址传递 ByRef计算机等级考试二级(计算机等级考试二级(VBVB)培训)培训 鲁松鲁松2323第第8 8章章 过程设计过程设计8.3 递归过程递归过程l 递归过程的定义递归过程的定义u在过程定义中调用自身或以其他方式间接调用自身的过程在过程定义中调用自身或以其他方式间接调用自身的过程u可以递归可以递归Sub过程,也可以递归过程,也可以递归Function过程过程l 递归过程的构成条件递归过程的构成条件u有对本身的调用语句有对本身的调用语句u有一个结束递归过程的条件
25、(终止条件或边界条件)有一个结束递归过程的条件(终止条件或边界条件)l 三题递归相关三题递归相关u求求 N!u求求 菲布拉及数列菲布拉及数列u求求 最大公约数最大公约数计算机等级考试二级(计算机等级考试二级(VBVB)培训)培训 鲁松鲁松2424第第8 8章章 过程设计过程设计8.4 变量的作用域与生命期变量的作用域与生命期l变量的作用域变量的作用域 在窗体模块中,不能定义数组、定长字符串、用户自定义类型等在窗体模块中,不能定义数组、定长字符串、用户自定义类型等为全局变量。为全局变量。局部变量局部变量模块级变量模块级变量全局变量全局变量窗体模块窗体模块标准模块标准模块声明方式声明方式Dim/S
26、taticDim/PrivatePublic声明位置声明位置过程内过程内窗体窗体/模块的通用模块的通用声明段声明段窗体窗体/模块的通用声明段模块的通用声明段作用范围作用范围本过程本过程本模块本模块整个程序整个程序能否本模块其它能否本模块其它过程访问过程访问不能不能能能能能能否被其它模块能否被其它模块访问访问不能不能不能不能能,但需在变量能,但需在变量名前加上窗体名名前加上窗体名能能计算机等级考试二级(计算机等级考试二级(VBVB)培训)培训 鲁松鲁松2525第第8 8章章 过程设计过程设计8.4 变量的作用域与生命期变量的作用域与生命期l变量的生命期变量的生命期l8-22:若希望在离开某过程后
27、,还能保存该过程中局部变量的值,:若希望在离开某过程后,还能保存该过程中局部变量的值,则应使用则应使用关键字在该过程中定义局部变量。关键字在该过程中定义局部变量。 A. DimB. PrivateC. PublicD. Staticl同名变量同名变量 局部变量局部变量静态变量静态变量模块级变量模块级变量全局变量全局变量声明方式声明方式DimStaticDim/PrivatePublic作用域作用域本过程本过程本过程本过程本模块本模块整个程序整个程序生命期生命期从声明到过程终止从声明到过程终止 从声明到程序终止从声明到程序终止 从声明到程序终止从声明到程序终止 从声明到程序终止从声明到程序终止计
28、算机等级考试二级(计算机等级考试二级(VBVB)培训)培训 鲁松鲁松2626第第9 9章章 文件操作文件操作9.1 文件的基本概念文件的基本概念l 文件的概念文件的概念l 文件类型文件类型l 文件操作步骤文件操作步骤9.2 基本文件操作控件基本文件操作控件l 驱动器列表框驱动器列表框l 目录列表框目录列表框l 文件列表框文件列表框计算机等级考试二级(计算机等级考试二级(VBVB)培训)培训 鲁松鲁松2727第第9 9章章 文件操作文件操作9.3 常用文件操作语句与文件操作函数常用文件操作语句与文件操作函数l Open语句语句l Close语句与语句与Reset语句语句l Lock和和Unloc
29、k语句语句l Seek语句语句l Print #和和Write #语句语句l Input#和和Line Input # 语句语句l Put # 和和 Get #语句语句l 常用文件操作函数常用文件操作函数计算机等级考试二级(计算机等级考试二级(VBVB)培训)培训 鲁松鲁松2828第第10 10章章 算法中使用的基本技巧算法中使用的基本技巧10.1.1 交换交换l t=a : a=b : b=tl t=b: b=a : a=tl t=a : a=b : b=c : c=tl a=a+b : b=a-b : a=a-b10.1.2 累加、累乘累加、累乘l n=n+1l Sum=Sum+n P=P
30、*n10.2 最大最大/小值问题小值问题l max=a(1)for i=2 to Ubound(a)if a(i)max then max=a(i)next i计算机等级考试二级(计算机等级考试二级(VBVB)培训)培训 鲁松鲁松2929第第10 10章章 算法中使用的基本技巧算法中使用的基本技巧10.3.1 穷举穷举l 10-1:用:用100元买元买100只鸡,公鸡每只只鸡,公鸡每只5元,母鸡每只元,母鸡每只3元,小鸡每元,小鸡每1元元3只,问可以买多少只公鸡、母鸡和小鸡?有多少种组合?只,问可以买多少只公鸡、母鸡和小鸡?有多少种组合?Private Sub Command1_Click()
31、Dim X As Integer, Y As Integer, Z As IntegerDim Count As IntegerCount = 0For X = 0 To Fix(100 / 5) For Y = 0 To Fix(100 / 3) For Z = 0 To 100 If X * 5 + Y * 3 + Z / 3 = 100 And X + Y + Z = 100 Then Print X, Y, Z Count = Count + 1 End If Next NextNextPrint 组合个数:组合个数:; CountEnd SubFor X = 0 To 100 For
32、 Y = 0 To 100 - X Z = 100 - X - Y If 0.5 * X + 2 * Y + 3 * Z = 100 Then Print X, Y, Z Count = Count + 1 End If Next YNext计算机等级考试二级(计算机等级考试二级(VBVB)培训)培训 鲁松鲁松3030第第10 10章章 算法中使用的基本技巧算法中使用的基本技巧l 10-2:求出所有的水仙花数,如:求出所有的水仙花数,如153=13+53+33Private Sub Command1_Click()Dim X As Integer, Y As Integer, Z As Int
33、egerFor X = 1 To 9 For Y = 0 To 9 For Z = 0 To 9 If X 3 + Y 3 + Z 3 = 100 * X + 10 * Y + Z Then Print 100 * X + 10 * Y + Z End If Next NextNextEnd Sub计算机等级考试二级(计算机等级考试二级(VBVB)培训)培训 鲁松鲁松3131第第10 10章章 算法中使用的基本技巧算法中使用的基本技巧10.3.2 迭代迭代(费波拉契数列费波拉契数列)l 10-3:设方程为:设方程为4*x2-3*x-7=0,给出不精确的初始根,给出不精确的初始根x0=2,利用,
34、利用公式:公式:xn+1=xn-f(xn)/f(xn) n=0,1,2求出方程的近似根,直到求出方程的近似根,直到 |xn+1-xn|0.00001。Dim X0 As Double, X1 As DoubleX0 = 2Do X1 = X0 - (4 * X0 2 - 3 * X0 - 7) / (8 * X0 - 3) If Abs(X1 - X0) 0.00001 Then Exit Do X0 = X1LoopPrint X1Dim X0 As Double, X1 As DoubleDim X0 As Double, X1 As DoubleX1 = 2X1 = 2DoDo X0 =
35、 X1 X0 = X1 X1 = X0 - (4 X1 = X0 - (4 * * X0 2 - 3 X0 2 - 3 * * X0 - 7) / (8 X0 - 7) / (8 * * X0 - 3) X0 - 3)Loop Until Abs(X1 - X0) 0.00001Loop Until Abs(X1 - X0) = 10 -10) = 10 -10Print SumPrint SumEnd SubEnd Sub计算机等级考试二级(计算机等级考试二级(VBVB)培训)培训 鲁松鲁松3535Private Sub Command1_Click()Private Sub Command
36、1_Click()Const x As Single = 3.14159 / 3Const x As Single = 3.14159 / 3Dim Sum As Single, n As Integer, T As SingleDim Sum As Single, n As Integer, T As Singlen = 1: T = 1n = 1: T = 1DoDo Sum = Sum Sum = Sum + T + T n = n + 1 n = n + 1 T = (-1) (n + 1) T = (-1) (n + 1) * * x (2 x (2 * * (n - 1) /F(2
37、 (n - 1) /F(2 * * (n - 1) (n - 1)Loop While Abs(TLoop While Abs(T) = 10 -10) = 10 -10Print SumPrint SumEnd SubEnd Sub q q Function F(ByValFunction F(ByVal k As Integer) As k As Integer) As DoubleDoubleDim i As IntegerDim i As IntegerF = 1F = 1For i = 2 To kFor i = 2 To k F = F F = F * * i iNext iNex
38、t iEnd FunctionEnd Functioncos(x)=1-x2/2!+x4/4!-+(-1)n+1x2(n-1)/2(n-1)!+计算机等级考试二级(计算机等级考试二级(VBVB)培训)培训 鲁松鲁松3636第第11 11章章 数列、级数求和及矩阵运算问题数列、级数求和及矩阵运算问题11.2.2 连乘积连乘积11-4: 到通项接近到通项接近1时停止计算。时停止计算。2222222222Private Sub Command1_Click()Private Sub Command1_Click()Dim Sum As Single, T As SingleDim Sum As Si
39、ngle, T As SingleSum = 2: T = Sqr(2)Sum = 2: T = Sqr(2)DoDo Sum = Sum Sum = Sum * * 2 / T 2 / T T = Sqr(2 + T) T = Sqr(2 + T)Loop While Abs(2 / T - 1) = 10 -10Loop While Abs(2 / T - 1) = 10 -10Print SumPrint SumEnd SubEnd Sub计算机等级考试二级(计算机等级考试二级(VBVB)培训)培训 鲁松鲁松3737第第11 11章章 数列、级数求和及矩阵运算问题数列、级数求和及矩阵运算
40、问题11.3.1 矩阵的生成和打印矩阵的生成和打印l 生成数组生成数组l 打印数组打印数组11.3.2 矩阵的行列交换矩阵的行列交换11.3.3 矩阵的变换矩阵的变换11-10:将一个:将一个4行行4列矩阵进行转置列矩阵进行转置11-11:求出一给定矩阵的旋转矩阵。:求出一给定矩阵的旋转矩阵。26221814252117132420161223191511262524232221201918171651413121114812163711152610141591316151413121110987654321计算机等级考试二级(计算机等级考试二级(VBVB)培训)培训 鲁松鲁松3838第第11
41、 11章章 数列、级数求和及矩阵运算问题数列、级数求和及矩阵运算问题11.3.4 寻找某些特殊点寻找某些特殊点l 11-12:求:求6*5数组的鞍点,鞍点是指本行最大、本列最数组的鞍点,鞍点是指本行最大、本列最小的元素。小的元素。11.3.5 特殊矩阵特殊矩阵l 按以下样式输出按以下样式输出5行杨辉三角。行杨辉三角。 111 1 2 1 1 33 1 1 4 6 4 1Private Sub Command1_Click()Private Sub Command1_Click()Dim A(5, 5) As Integer, I As Integer, Dim A(5, 5) As Integ
42、er, I As Integer, J As IntegerJ As IntegerFor I = 1 To 5For I = 1 To 5 A(I, 1) = 1 A(I, 1) = 1 A(I, I) = 1 A(I, I) = 1Next INext IFor I = 3 To 5For I = 3 To 5 For J = 2 To I - 1 For J = 2 To I - 1 A(I, J) = A(I - 1, J - 1) + A A(I, J) = A(I - 1, J - 1) + A(I - 1, J)(I - 1, J) Next J Next JNext INext
43、 IFor I = 1 To 5For I = 1 To 5 Print Space(5 - I); Print Space(5 - I); For J = 1 To I For J = 1 To I Print CStr(A(I Print CStr(A(I, J); ;, J); ; Next J Next J Print PrintNext INext IEnd SubEnd Sub计算机等级考试二级(计算机等级考试二级(VBVB)培训)培训 鲁松鲁松393911.3.6 11.3.6 综合例题综合例题l 11-4:标记出:标记出5*5方阵中每一行最小元素的位置。如果某方阵中每一行最小元
44、素的位置。如果某一行有多个数值相等的最小元素,也要同时标记出来。一行有多个数值相等的最小元素,也要同时标记出来。标记方式为每一行的最小元素为标记方式为每一行的最小元素为0,其他元素为,其他元素为1。Option ExplicitOption ExplicitOption Base 1Option Base 1Private A(5, 5) As IntegerPrivate A(5, 5) As IntegerPrivate Sub Form_clickPrivate Sub Form_click()()Text1 = Text1 = Dim I As Integer, J As Intege
45、rDim I As Integer, J As IntegerRandomizeRandomizeFor I = 1 To 5For I = 1 To 5 For J = 1 To 5 For J = 1 To 5 A(I, J) = Int(20 - 10 + 1) A(I, J) = Int(20 - 10 + 1) * * Rnd Rnd + 10) + 10) Text1.Text = Text1 & A(I, J) & Text1.Text = Text1 & A(I, J) & Next J Next J Text1 = Text1 & vbCrLf Text1 = Text1 &
46、 vbCrLfNext INext IEnd SubEnd SubPrivate Sub Command1_Click()Private Sub Command1_Click()Dim I As Integer, J As Integer, Min As IntegerDim I As Integer, J As Integer, Min As IntegerFor I = 1 To 5For I = 1 To 5 Min = A(I, 1) Min = A(I, 1) For J = 2 To 5 For J = 2 To 5 If A(I, J) Min Then Min = A(I, J
47、) If A(I, J) Min Then Min = A(I, J) Next J Next J For J = 1 To 5 For J = 1 To 5 If A(I, J) = Min Then If A(I, J) = Min Then Text2 = Text2 Text2 = Text2 & 0 & 0 Else Else Text2 = Text2 Text2 = Text2 & 1 & 1 End If End If Next J Next J Text2 = Text2 & vbCrLf Text2 = Text2 & vbCrLfNext INext IEnd SubEn
48、d Sub计算机等级考试二级(计算机等级考试二级(VBVB)培训)培训 鲁松鲁松404011.3.6 11.3.6 综合例题综合例题l 11-15:找出:找出5*5数组中最大元素和最小元素所在行,如数组中最大元素和最小元素所在行,如果不在同一行则交换这两行。果不在同一行则交换这两行。Option ExplicitOption ExplicitOption Base 1Option Base 1Private A(5, 5) As IntegerPrivate A(5, 5) As IntegerPrivate Sub Form_clickPrivate Sub Form_click()()Di
49、m I As Integer, J As IntegerDim I As Integer, J As IntegerRandomizeRandomizeFor I = 1 To 5For I = 1 To 5 For J = 1 To 5 For J = 1 To 5 A(I, J) = Int(99 - 10 + 1) A(I, J) = Int(99 - 10 + 1) * * Rnd Rnd + 10) + 10) Text1.Text = Text1 & A(I, J) & Text1.Text = Text1 & A(I, J) & Next J Next J Text1 = Tex
50、t1 & vbCrLf Text1 = Text1 & vbCrLfNext INext IEnd SubEnd SubPrivate Sub Command1_Click()Private Sub Command1_Click()Dim I As Integer, J As Integer, T As IntegerDim I As Integer, J As Integer, T As IntegerDim Min As Integer, Max As IntegerDim Min As Integer, Max As IntegerDim LMin As Integer, LMaxDim
51、 LMin As Integer, LMax As Integer As IntegerMin = A(1, 1): Max = A(1, 1)Min = A(1, 1): Max = A(1, 1)For I = 1 To 5For I = 1 To 5 For J = 1 To 5 For J = 1 To 5 If A(I, J) Min Then If A(I, J) Max Then If A(I, J) Max Then Max = A(I, J) Max = A(I, J) LMax LMax = I = I End If End If End If End If Next J
52、Next JNext INext IIf LMin LMaxIf LMin LMax Then Then For I = 1 To 5 For I = 1 To 5 T = A(LMin T = A(LMin, I), I) A(LMin, I) = A(LMax A(LMin, I) = A(LMax, I), I) A(LMax A(LMax, I) = T, I) = T Next I Next IEnd IfEnd IfFor I = 1 To 5For I = 1 To 5 For J = 1 To 5 For J = 1 To 5 Text2 = Text2 Text2 = Tex
53、t2 & A(I, J) & & A(I, J) & Next J Next J Text2 = Text2 & vbCrLf Text2 = Text2 & vbCrLfNext INext IEnd SubEnd Sub计算机等级考试二级(计算机等级考试二级(VBVB)培训)培训 鲁松鲁松4141第第12 12章章 数组的移动、排序及查找数组的移动、排序及查找12.1 移动移动l 12-1:将一个:将一个10个元素的数组个元素的数组A循环向右移动一位。循环向右移动一位。1 2 3 4 5 6 7 8 9 10 10 1 2 3 4 5 6 7 8 9l 12-2:将一个:将一个10个元素的
54、数组个元素的数组A循环向左移动一位。循环向左移动一位。l 12-3:将一个:将一个10个元素的数组个元素的数组A循环向右移动三位。循环向右移动三位。l 12-4:将一个:将一个4行行4列数组的列循环右移一列。列数组的列循环右移一列。计算机等级考试二级(计算机等级考试二级(VBVB)培训)培训 鲁松鲁松4242第第12 12章章 数组的移动、排序及查找数组的移动、排序及查找12.2 排序排序l 12.2.1 选择法排序选择法排序 l 12.2.2 冒泡法排序冒泡法排序l 12.2.3 插入法排序插入法排序l 12.2.4 合并排序合并排序l 12.2.5 拉锯式排序法拉锯式排序法u每一轮先把最小
55、的元素从前到后送到最后面的位置,然后从后到前每一轮先把最小的元素从前到后送到最后面的位置,然后从后到前把最大的元素送到最前面的位置。把最大的元素送到最前面的位置。计算机等级考试二级(计算机等级考试二级(VBVB)培训)培训 鲁松鲁松4343第第12 12章章 数组的移动、排序及查找数组的移动、排序及查找12.3 查找查找l 12.3.1 顺序查找顺序查找 l 12.3.2 二分法查找二分法查找Option Base 1Option Base 1Private a(10) As IntegerPrivate a(10) As IntegerPrivate Sub Command1_Click()
56、Private Sub Command1_Click()Dim N As Integer, MiddDim N As Integer, Midd As Integer, Low As Integer, High As Inte As Integer, Low As Integer, High As IntegergerDim Flag As BooleanDim Flag As BooleanFor i = 1 To 10For i = 1 To 10 a(i a(i) = i ) = i * * 10 + i 10 + i Print a(i Print a(i););Next iNext
57、iPrintPrintFlag = FalseFlag = FalseN = 120N = 120Low = 1: High = 10Low = 1: High = 10DoDo Midd = Int(Low Midd = Int(Low + High) / 2) + High) / 2) If a(Midd If a(Midd) = N Then) = N Then Print CStr(N); is in array ; CStr(Midd Print CStr(N); is in array ; CStr(Midd) ) Flag = True Flag = True Exit Do E
58、xit Do Else Else If a(Midd If a(Midd) N Then) N Then High = Midd High = Midd - 1 - 1 Else Else Low = Midd Low = Midd + 1 + 1 End If End If End If End If Loop While Low = HighLoop While Low = HighIf Not Flag Then Print Cant find the Number ; CStr(NIf Not Flag Then Print Cant find the Number ; CStr(N)
59、; !); !End SubEnd Sub计算机等级考试二级(计算机等级考试二级(VBVB)培训)培训 鲁松鲁松4444第第13 13章章 因数、最大公约数与素数等问题因数、最大公约数与素数等问题13.1 整数的因数计算问题整数的因数计算问题l穷举法求整数的所有因子穷举法求整数的所有因子l动态数组保存整数的所有因子动态数组保存整数的所有因子l整数的连乘积表达整数的连乘积表达24=2223Private Sub Command1_Click()Private Sub Command1_Click()Dim i As Integer, N As IntegerDim i As Integer, N
60、 As IntegerN = InputBox(PleaseN = InputBox(Please Input a number) Input a number)i = 2i = 2Print CStr(NPrint CStr(N); =;); =;Do While i NDo While i NIf M NIf M N Then T = M: M = N: N = TEnd If欧几里德法欧几里德法 求最大公约数求最大公约数R = M Mod NDo While R 0 M = N N = R R = M Mod NLoopMsgBox (最大公约数是:最大公约数是: & N)End Sub
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年虚拟展厅设计理念与发展趋势报告
- 2026年化工行业项目进度管理及风险控制分析报告
- 2026年微波和高频波解冻设备行业发展行业报告
- 2026年人工智能在金融风控领域的应用报告及未来五年行业洞察
- 2026年建筑装饰服务行业发展行业新材料创新报告及未来五至十年行业发展趋势分析报告
- 2026年食品行业烘焙食品保鲜技术市场趋势报告
- 2026年化工行业创新趋势与市场分析报告
- 2026年农业科技革新报告:智慧农业的未来与挑战
- 2026年5G通信技术在智能家居行业创新应用报告
- 2026年韩国移动支付行业发展报告
- 2026 幼儿积极情绪培养课件
- 航天十院测评题
- 转子流量计培训课件
- 走心机刀具培训
- 公交司机礼仪培训
- (新教材)2026年人教版二年级上册数学 第4课时 9的乘法口诀 课件
- 2024年重庆市巴南区社区工作者招聘真题
- 机场招聘笔试题目及答案
- 2025年国家能源集团宁夏煤业有限责任公司招聘笔试考试题库+答案
- 年利用 5 万吨退役锂电池资源循环项目环境影响报告书
- (高清版)DB62∕T 446-2019 河湖及水利工程土地划界标准
评论
0/150
提交评论