收藏 分销(赏)

信息技术vb选修知识点.doc

上传人:快乐****生活 文档编号:4341757 上传时间:2024-09-08 格式:DOC 页数:14 大小:775.50KB 下载积分:8 金币
下载 相关 举报
信息技术vb选修知识点.doc_第1页
第1页 / 共14页
信息技术vb选修知识点.doc_第2页
第2页 / 共14页


点击查看更多>>
资源描述
选修知识点 (一) 计算机解决问题得流程图 (二)算法 一、 算法定义:就是解决问题得方法与步骤。算法就是程序设计得“灵魂”。算法+数据结构=程序。 二、算法得描述方法:分自然语言、流程图与伪代码三种。 1、自然语言:人们日常生活中得语言(本国语言),用自然语言描述符合我们得习惯,且容易理解。 2、流程图:也称程序框图,它就是算法得一种图形化表示方法。且描述算法形象、直观,更易理解。 3、伪代码:就是介于自然语言与计算机程序语言之间得一种算法描述。就是专业软件开发人员常用方法。 输入、输出 判断 处理、运算 连接点 流程线 开始、结束 三、算法得5个特征: 1、有穷性:执行有限步之后结束,且每一步得执行时间也都就是有限得。 2、确定性:每一步都有确切得含义。 3、可行性:原则上能精确运行,用纸与笔做有限次运算后即可完成。 4、输入:有零个或多个输入。 5、输出:至少产生一个输出。 (三)程序设计基础 计算机程序设计语言经历了机器语言、汇编语言、高级语言得发展过程。 常用高级语言:BASIC、VB、Pascal、C、C++、Java、Delphi、Fortran、Powerbuilder等。 面向对象得程序设计语言,如vb:其中得对象主要就是系统设计好得对象,包括窗体、控件等。 控件:就是指工具箱中得工具在窗体中画出得能实现一定功能得部件,如标签、文本框、命令按钮等。 控件 对象得类型 前缀 名字举例 窗体 Form frm frmfind 命令按钮 Command cmd cmdok 标签 Label lbl lblinput 文本框 TextBox txt txtClock 若命令按钮(Command)得Enabled属性设置为True时按钮有效,设置为False时按钮无效 常用控件: 对象得三要素 :属性 、方法 、事件 l 属性 Name 设置对象得名称 Font 设置控件中字体格式 Caption 决定控件中显示得内容 BackColor 设置控件背景色 Text 决定窗体中文本框中显示得内容 ForeColor 设置控件得前景色(即文字颜色) Height 决定控件高度 Top 决定控件与窗体顶部得距离 Width 决定控件宽度 Left 决定控件与窗体左边得距离 Visible 设置控件就是否可见 BorderStyle 设置控件得边框风格 Alignment 即标签文字对齐属性:(0)Left Justify时文本左对齐; (1)Right Justify时文本右对齐; 设置为(2)Center时文本居中。 对象中属性可以在设计界面时通过属性窗中设置,也可以在运行时通过赋值语句在代码窗口设置: 对象名、属性名=属性值 例:给文本框Txt123得Text属性赋值为字符串”20”,代码如下:Txt123、text = “ 20 ” 注意:如果直接给对象名赋值得话,就是赋值给对象得默认属性。 例: Txt123 = “ 20 ” 相当于 Txt123、text = “ 20 ” 都就是给文本框Txt123得text属性赋值。 如果要获取对象得状态或特性,这时就要读取对象得属性值,方法如下:变量名=对象名、属性名 例:读取文本框“txt123”得“Text”属性得代码如下:a = txt123、text l 方法 常见得方法如下:Print Cls Move Show 格式:[对象]、方法[参数名表] 例 :Form1、Print ”欢迎使用” l 事件及事件驱动 常见得事件如下: Click 、 DblClick 、KeyPress 、Load 、MouseUp 等。 事件就是对象对外部操作得响应,如在程序执行时,单击命令按钮会产生一个Click事件。如需要命令按钮响应Click事件,就把完成Click事件功能得代码写到Click事件得事件过程中,与事件一一对应。 事件过程得形式如下: Private Sub 对象名_事件名( ) (事件过程代码) End Sub 一、常量:指在程序进行过程中不变得量,在VB中一般分数值常量与字符常量两种 数值常量:就就是数学中说得常数,分整型常量与实型常量两种 整型常量:即整数,指不带小数点得数值如1、0、、-10、+35等都就是合法得整数 实型常量:即实数,指带小数点得数值。 实型常量又分为定点数与浮点数两种。 例:定点数:3、14159与-6、8,1、99 浮点数:2E6、1E5、88E 例:1、2345×103 可表示为1、2345E3,字母E表示底数10 浮点数就就是数学上得科学计数法。 字符串常量:被一对英文双引号括起来得若干个合法得字符称为字符串常量。例如:”China”、”Visual Basic”、”18”、”3、1415”等,就是指英文双引号中得字符,不包括英文双引号本身。  符号常量:如果多次用到同一个常量,则可用一个有意义得名字表示这个常量。 二、变量:在程序执行过程中,其值可以改变得量称为变量。变量命名注意要点: 1、必须以字母或汉字开头,不能以数字或其她字符开头。 2、只能由字母、汉字、数字或下划线组成,不能含有小数点、空格等字符。 3、最长不超过255个字符 4、不能以VB保留字作变量名,如语句定义符、函数名(Integer、End、Print、Dim)等。 5、VB不区分变量名中字母大小写。如HELLO与Hello就是同一个变量。 三、数据及运算 1、常用数据类型: (框选得内容都要熟记) 2、常量与变量得命名、声明及赋值 (注意:符号常量声明与赋值必须一起完成,变量却必须分2句) 符号常量得声明与赋值 Const 常量名 [As 常量类型] = 常量值(或 表达式) 如:Const pi As Single = 3、14159 常量名为pi 注意:常量必须在声明得时候立马赋值,如果没有 “= 3”部分就就是错误得。 变量得声明: Dim <变量名 >As <变量类型> 如:Dim a As Integer 定义一个 整型变量,变量名为a 变量得赋值 VB中使用 “ = ” 给变量赋值, 其形式为:变量名 = 表达式  四、运算符 1、算术运算符 (注意 :算术运算符得优先级问题、区分/ \ Mod三个运算符) 注意:\与mod得运算量如果带小数,要先四舍五入取整,再作运算。 2、字符串运算符 “+”与“&” 作用就是将运算符两边得字符串连接为一个新得字符串。使用"&"运算符时应注意前后加空格。 注意特例:当数值型与字符型连接时,"+"把数据都转化成数值型然后相加,返回一个数值型数据。 例如: “123” + “45” = “12345” 123 + “45” = 168 “123” & “45” = “12345” 123 & “ 45” = “12345” 3、关系运算符 (优先级相同) 注意:关系表达式得运算结果为布尔值True 或 False =   等于       <   小于号 <>  不等于  >  大于号 >=  大于等于号     <= 小于等于号 运算规则:(1)当两个操作式均为数值型,按数值大小比较。 (2)字符串比较,则按字符得ASCII码值从左到右逐位比较,直到出现不同得字符为止。 例: "987" > "99",结果为 False。 (3)数值型与可转换为数值型得数据,按数值比较。 例:29 > "189",结果为 False。 4、逻辑运算符 Not(取反) And(与) Or(或) 优先级依次降低 Not对一个逻辑量进行运算,And 与 Or就是对两个逻辑量进行运算,运算结果都为逻辑值True或False 运算符 说明 优先级 说明 举例 结果 Not 非 1 当操作数为假时,结果为真 Not False True And 与 2 操作数均为真时,结果才为真 True And False False Or 或 3 操作数中有一个为真时,结果为真 False Or True True 5、日期运算符与日期表达式 日期表达式就是用“+”或“-”将算式表达式、日期型常量、日期型变量、日期函数等连接起来得式子。 例如: 表达式 “#2003/09/01# + 30” 得运算结果就是“2003-10-1” 表达式 “#2003/10/20# - #2003/10/10#” 得运算结果为整数10 6、运算符得执行顺序 : 算术运算符 > 字符串运算符 >  关系运算符 >  逻辑运算符 如a = 2: b = 3: c = 4: d = 5 则表达式 a > b And 2 * a > c Or c <= d 得值为 True 7、表达式得写法 虽然VB中得表达式与代数式中得算式很相似,但两者却就是完全不同得概念。要注意区别,如在VB中不能使用 ≤ ≥ ≠等。下表中列出了一些代数式对应得VB表达式。 代数式 VB表达式 说明 (2*a+b)/(4*a*b) 在VB表达式中无法写分式,,乘法运算符 * 不能省略 g*t^2/2 VB中不能使用上标,指数必须用VB运算符 ^ 表示 a≤b≤c a<=b And b<=c 要用VB中得运算符,且不能连续写 Sqr(b* b -4 * a* c) 使用内部函数Sqr计算平方根(另函数Abs 求绝对值) 五、常用函数 1、数学函数 函 数 名 称 含 义 Abs(x) 绝对值函数 求x得绝对值 |x| Int(x) 取整函数 求≤x得最大整数 Sqr(x) 算术平方根函数 求x得算术平方根 Log(x) 自然对数函数 求x得自然对数 Rnd 随机函数 产生[0,1)之间得随机数 Exp(x) 指数函数 ex, e=2、718282…… Sgn(x) 符号函数 1 x>0 Sgn(x) = 0 x=0 -1 x<0 Sin(x) 正弦函数 Sin(x), x得单位为弧度 Cos(x) 余弦函数 Cos(x), x得单位为弧度 Tan(x) 正切函数 Tan(x), x得单位为弧度 注意:(1)Int (x)就是取小于等于x得最大整数。 例如: Int (3、12) =3 Int (2、1+3) =5 Int ( -4、 6) = -5 Int ( -1-2、 5) = -4 (2)Rnd函数产生 [0, 1) 之间得一个随机数,它常与Randomize(以初始化随机数生成器)结合使用, 如果要产生 [0, A ) 间得 随机整数,表达式为 Int (Rnd *A) 产生 [A , B) 间得 随机数: Rnd*(B-A) +A 产生 [A ,B] 间得 随机整数: Int(Rnd * (B-A+1))+A 2、字符串函数 (注意得以下字符串函数返回得值 就是数值型,还就是字符串型。) 函数 功能 实例 结果 Len(字符串) 求字符串得长度(字符个数) Len ("2008奥运") 6 Left(字符串,n ) 截取字符串左边n个字符 Left (" 2008奥运",4) “2008” Mid(字符串,m,n ) 从字符串第m个字符开始截取n个字符 Mid ("2008奥运",3,2) “08” Mid(字符串,m ) 从字符串第m个字符开始截取剩余字符 Mid ("2008奥运",3) “08奥运” Right(字符串,n ) 截取字符串右边n个字符 Right (" 2008奥运" ,2) “奥运” String ( n,字符串) 生成指定长度得指定字符得字符串 String (3,"89" ) “888” InStr(字符串1,字符串2) 在字符串1中查找字符串2、 并返回其出现得位置 InStr("2008奥运","奥") 5 注意:(1)String函数只返回n个指定得字符串得首字符。 (2)Left(字符串,n )与Right(字符串,n )中,当n得值大于字符串得长度时,返回整个字符串。(3) Mid(字符串,m,n)函数中,如果m大于字符串得长度,则返回空串,如果省略n,则返回m开始得全部字符。 3、常用转换函数 函数 功能 实例 结果 Val(数值型字符串) 将数值型字符串转换为数值 Val ("99") +Val ("88") 187 Str(数值) 将数值转换为字符串 Str (5) " 5" Chr(字符代码) 将字符得Asc码转换为对应得字符 Chr (65) A Asc(字符) 求字符对应得ASCII码 Asc ("A" ) 65 CInt(表达式) 将表达式结果作四舍五入处理 CInt (3、6) 4 Fix(表达式) 将表达式结果得小数部分截去 Fix(3、8) 3 注意(1)对于Str(数值)函数,如果其中得数值为正数,则返回得字符串得第一个字符为空格(符号位)。如Str(5)得结果为两个字符长度得字符串" 5",如要得到不含符号位得字符串,可使用CStr()函数。 (2)CInt(表达式) 当表达式得值对应得小数位为 、5得时候比较特殊,函数结果为离表达式得值最近得一个偶数。 如CInt(4、5)=4 (3)Asc(字符)函数,只求"字符"中得第一个字符得ASCII码值,如 :Asc("AB" )=65 (4)ASCII码得大小:空格 < 数值 < 大写字母 < 小写字母 常用字符得ASCII码值:空格 得ASCII码为:32 0 得ASCII码为:48 A 得ASCII码为:65 a 得ASCII码为:97 其她数字与英文字母按序依次类推。 (5)字母转换。因大写字母得ASCII码比对应得小写字母小32,所以可通过Chr 与Asc 函数互相转换。 例:a转A Chr ( Asc ("a") - 32) A转a Chr (Asc ("A") + 32 ) 注意 式子中""不能省略 4、日期函数 (1) Date()、Time()、Now()。 这三个函数没有参数,分别返回计算机系统得当前日期、时间、日期与时间。 如2011年5月29日, Print Date() 或者 Print Date 都会打印出 2011-5-29 (2) Year()、Month()、Day()。 这三个函数必须有参数,即必须指定一个日期,分别返回指定日期得年、月与日。 函数实例 结果 Day(#8/18/2008#) 18 Month(#8/18/2008#) 8 Year (#8/18/2008#) 2008 5、定位函数(与Print语句配合使用得),以控制输出数据得格式,主要包括Tab、Space等。 (l) Tab函数。功能:将被输出得内容放在由参数n所指定得位置(列数)处,在书写时,被输出得内容要放在Tab函数得右面,并用分号分隔。 例: Print Tab (15);"姓名"; Tab (30);"成绩" (2) Space函数。 功能:产生由n个空格所组成得字符串。 6、用户交互函数 VB提供InputBox( )与MsgBox( )函数用于人机交互。 (1) InputBox ( ) 格式: InputBox(提示[,标题][,默认值] [,X坐标][,Y坐标]) 功能:在程序中调用InputBox函数,将产生一个提示用户输入内容得输入框,等待用户输入信息,并返回字符串类型得数据。用户要想得到InputBox ()函数得返回值,就必须将函数得结果赋值给指定得变量。 格式为: 变量= InputBox(提示[,标题][,默认值]) 注意:每执行一次InputBox()函数,用户只能输入一个数据。输入框得样式就是固定得,我们可以改变得就是输入框得“提示”与“标题”得内容。 例如: r = InputBox ("请输入r" , "输入圆半径") 2、 MsgBox( ) 格式为:MsgBox(提示信息[,按钮][,标题] ) 功能:用于在程序运行过程中产生一个消息框,可以瞧作就是输出对话框,该函数得返回值为数值型数据。 格式:MsgBox(提示信息[,按钮][,标题]) 例如:p=MsgBox("您输入得密码不正确,就是否继续?" , vbYesNo , "错误提示") 当用户单击消息框中得一个按钮后,消息框即从屏幕上消失。在上面得语句中,将函数得返回值赋给变量P,在程序中可引用P作相应得处理。 六、常用语句 1、赋值语句 格式1: Let变量=表达式 功能:将右边表达式得结果赋给左边变量。 通常情况,Let可以省略。" =" 为赋值号。它与数学中得" ="就是不同得。特别要跟方程式区分开。如: X=5 即把数值5赋值给变量X Y =5 Mod 2 + 7 即先计算表达式5 Mod 2 + 7 得值,再将值8赋值给变量Y N =N + 1 即将N得值加1后后再赋给N X=Y 即将变量Y得值赋值给变量X 也可以在一行内给多个变量赋值,两条语句之间用冒号" : " 隔开,如: s=0: a=l: b=2 格式2:对象名[、属性名]=表达式 如果省略属性名,则直接赋值给对象得默认属性。 如:Text1、 Text ="您好! " 即把字符串 "您好! " 赋给Text l 得Text属性。 注意:赋值语句一般都独立成行,如果有类似赋值得语句出现在一些结构中,大家要会辨别。 例如跟在以下关键字之后 If x=5 While x=5 Until x=5 Print x=5 以上结构中得 x=5 不再就是赋值语句,因为 " = " 在这里就是个关系运算符,判断左右就是否相等,所以x=5 就是一个关系表达式,其值应该就是个逻辑型,不就是True 就就是False。 2、Print语旬 格式 :[对象名、]Print [表达式列表] 功能 :Print方法具有计算与输出双重功能。对于表达式,它先计算其值,然后再在指定得对象上输出文本,对于常量、变量则直接输出其值。对象可以就是窗体、图片框、打印机等。"对象名"可以省略,省略时表示在当前窗体上输出数据。 说明:(1)表达式列表可以就是一个或多个表达式,之间用英文得" ; "或" , "隔开。如果用逗号分隔,则按标准输出格式输出各数据,此时以14个字符位置为一个区段, 逗号后得表达式在下一个区段输出;如果之间用分号分隔,则按紧凑格式输出数据。 例: Print 1 ; 2 ; 3 ; 4 + 3 Print l , 2 , 3 , 4 + 3 输出结果为: 1 2 3 7 输出结果为: 1 2 3 7 (2)如果Print语句末尾没有逗号或分号,表示该Print输出完结果后自动换行,后面再执行Print时将在下一行得起始位置输出数据;如果在Print语句末尾使用逗号,则在同一行上跳到下一个输出区段输出下一个Print所输出得内容。如果在Print语句得末尾加上一个分号,表示下一个Print输出得内容将按紧凑格式紧跟在前一个Print所输出得内容后面; (3)当一个Print语句得后面无任何表达式时,则输出一空行或换行。 注意:与Tab()函数结合使用, 掌握各种图形得输出。 3、注释语句 为了提高程序得可读性,通常需要在程序得适当位置加上必要得注释。在VB中添加注释语句得方法为在字符" ' "后加注释内容或采用 " Rem注释内容 "两种形式。 格式1: ' 注释内容 用 ' 写得注释语句既可以单独写一行,也可以跟在其她语句后。 格式2: Rem 注释内容 用Rem写得注释语句必须单独写一行。 4、结束语旬 格式: End 功能:强制程序结束运行。 Private Sub Command1_Click( ) End End Sub 该过程用于结束程序,即单击命令按钮Commandl 时,结束程序得运行。 (四)程序设计得三大基本结构 一、顺序结构 代码按照由上到下得顺序一行一行地执行。程序执行过程中没有分支、没有重复。 二、分支结构(选择结构) 程序在运行时会根据不同得条件决定程序得走向。实现选择结构得语句有If语句与Select语句。 1、If语句分为单分支 、双分支 与多分支三类 。 (1) 单分支if结构: (注意:行if与 块if 得区别只在书写格式上。) l 行if语句:IF <条件表达式> Then 语句A l 块if语句:IF <条件表达式> Then 语句A End if (2)双分支if结构: l 行if语句:IF <条件表达式> Then 语句A Else 语句B l 块if语句:IF <条件表达式> Then 语句A ELSE 语句B END IF (3)多分支If语句   If <表达式1> Then      <语句块1> [ ElseIf <表达式2> Then    <语句块2>]      …… [ Else <语句块 n+1> ]   End If 2、Select Case 语句 注意:要会区分选择结构与循环结构得流程图。 如上图:甲为循环结构,有向上回到条件框得箭头。 乙为选择结构(双分支)。 Select Case <测试表达式> Case 表达式列表1 语句组1 Case 表达式列表2 语句组2 … Case ELSE 语句组N+1 End Select Select/Case语句得执行过程就是:先求"测试表达式"得值,然后顺序测试该值符合哪一个Case子句得情况,如果找到了,则直接执行该Case子句下面得语句块,然后执行End Select得后续语句;如果没找到,则执行Case Else下面得语句块,然后执行End Select得后续语句。 说明:(1)"测试表达式"可以就是数值型或字符串型表达式。 (2)"表达式列表"形式有以下4种。 ① 一个表达式或用逗号隔开得若干表达式,例如2, 4, 6, 8。 ② 表达式1 To 表达式2,例如60 To 80。 注意,表达式1 应该小于 表达式2 ③ Is关系运算符表达式,例如Is > 80。 ④ 表达式,例如 x+3。 三、循环结构 1、For-Next循环 (适合于解决循环次数事先能够确定得问题。) For循环变量一般形式就是: For 循环变量 = 初值 To 终值 [ Step 步长值 ] [ 循环体 ] Next [ 循环变量] 说明:(1)循环变量,必须为数值型。循环初值、循环终值也就是数值型或数值表达式。 (2)循环得有效区间就是由循环初值、循环终值所限定得闭区间。 (3)步长值就是循环变量得增量,就是一个数值表达式。若步长值为正,则初值就应小于终值,否则循环体一次都不执行;若步长值为负,则初值应大于终值,否则循环体一次都不执行。如果步长值就是1, Step 1可略去不写。但若步长值为0,会造成死循环,这就是要避免得,可用Ctrl+Break 结束程序。 (4)循环体就是For语句与Next语句之间得语句序列,也就是需要重复执行得语句组。 (5)Next后得循环变量与For语句中得循环变量必须相同。 (6)循环得次数=(循环终值-循环初值)\ 步长值 + 1 For/ Next循环语句得执行过程: (1)系统将初值赋给循环变量,并自动记下终值与步长。 (2)检查循环变量得值就是否越过终值。如越过就结束循环,执行Next后面得语句;否则执行一次循环体。 (3)执行Next语句:将循环变量增加一个步长值再赋给循环变量,转到第2步继续执行循环。 2、Do-Loop循环 (对于不能预先确定次数, 但需要执行多次得情况,可以使用Do/Loop循环。) 格式一: Do While 条件表达式        循环体      Loop 先判断条件就是否为真,若条件为真,执行循环体,条件为假时退出循环。因此可能一次都不执行循环。 格式二: Do 循环体      Loop While 条件表达式 先执行一次循环体,再判断条件就是否为真,若条件为真,执行循环体,条件为假时退出循环。因此至少执行一次循环体。 格式三: Do 循环体      Loop Until 条件表达式 先执行一次循环体,再判断条件就是否为假,若条件为假,执行循环体,条件为真时退出循环。因此至少执行一次循环体。 格式四: Do Until 条件表达式        循环体      Loop 先判断条件就是否为假,若条件为假,执行循环体,条件为真时退出循环。因此可能一次都不执行循环。 注意: If语句 与 Do语句中都有得"条件表达式",一般就是一个关系表达式或逻辑表达式,其值不就是True就就是False。但如果就是数值型得表达式得话,会进行强制转换,即数字0 转换成False ,非0 转换成True。 (五)算法与问题解决 一、解析法 解析法又称公式法。解析法就就是在分析具体问题得基础上,抽取出一个数学模型,这个数学模型能用若干个解析表达式表示出来。求解了这些表达式,问题也就得以解决。 如:求解一元二次方程a*x^2+b*x+c=0得实根 dim x1 as double , x2 as double dim a AS Double,b AS Double,c AS Double if b*b-4*a*c>=0 then x1=(-b+sqr(b*b-4*a*c))/(2*a) x2=(-b-sqr(b*b-4*a*c))/(2*a) text1、text =str(x1) text2、text = str(x2) else print “方程无解” end if 分析: X= x1=(-b+sqr(b*b-4*a*c))/(2*a) x2=(-b-sqr(b^2-4*a*c))/(2*a) 二、穷举法 穷举法就是将求解对象一一列举出来,然后逐一加以分析、处理,并验证结果就是否满足给定得条件,穷举完所有对象,问题将最终得以解决。穷举法也叫枚举法、列举法。 穷举法关键就是如何列举所有可能得情况,不能遗漏,也不能重复。注意取值范围,减少计算机工作量。 适用编程问题:水仙花问题、鸡兔同笼问题、百钱百鸡问题、素数问题。 如:已知公鸡每只3元,母鸡每只5元,每3只小鸡1元。用100元钱买100只鸡,应各买多少只鸡? Dim a As Integer, b As Integer,c As Integer For a=0 to 33 ‘公鸡数 For b=0 to 20 ‘母鸡数 For c=0 to 100 ‘小鸡数 If a+b+c=100 and a*3+b*5+c/3=100  then   Print a;b;c end if Next c Next b Next a Dim a As Integer, b As Integer Dim c As Integer For a=0 to 33 ‘公鸡数 For b=0 to 20 ‘母鸡数 c=100-a-b ‘小鸡数 If a*3+b*5+c/3=100  then  Print a;b;c end if Next b Next a 三、数组及其应用 数组就是一组相同类型得变量集合。 数组用一个统一得名字代表逻辑上相关得一批数据, 每个元素靠下标变量来区分。有一个下标得数组称为一维数组。数组中得数据,逻辑上就是相互关联得。 1、使用数组要先声明数组得大小与数据类型。声明数组得格式如下: Dim 数组名(最大下标常量) As 数据类型 例1: Dim s (9) As Integer 表示:名称为s得一维数组中包含10个元素,下标从O到9。用来存放整型数据。 也可以指定下标得起始值。 例2: Dim x (2 to 10) As Single 这个数组含有9个元素,下标从2到10,数据类型属于单精度实型。 还可以说明多维数组。 例3: Dim D (4, 2 To 6, 3 To 9) As long 说明了一个3维数组,一共5*5*7个数组成员,数据类型属于长整型。 2、应注意得问题: (1)在同一个程序中,任何数组只能声明一次。 例如: Dim s(5) As Integer Dim s(10) As Integer 这样,运行时会报错:当前范围内得声明重复。 (2)下标必须就是常量且为整数(若不就是整数,程序运行时自动4舍5入为整数)。 (3)同一个程序中,数组名不能与变量名相同。 例如: Dim s As Integer Dim s (10) As Integer 这样,运行时会报错:变量与数组不能同名。 (4)数组必须先声明后使用 否则运行时会报错:子程序或函数未定义。 (5)数组使用时,下标不能超出声明得范围。 例如: Dim s (10) As Integer Print s(11) 这样运行时会报错:下标越界。 (6)数组声明时与变量一样,要注意类型。 例如: Dim s (10) As Integer S(3)=40000 这样运行时会报错: 溢出。 3、数组得应用 数组得赋值、计算、输出通常都与For—Next循环结合使用。For语句中得循环变量作为数组元素得下标,通过循环变量得不断改变,达到对每个数组元素依次进行处理得目得。 例子:利用数组实现:输出10个[1,100]得随机数,并输出它们得与与平均值。 Dim a(9) As Integer ‘数组得定义 Dim s As Integer Randomize ‘将RND函数随机化 For i = 0 To 9 a ( i ) = Int((100 - 1 + 1) * Rnd) + 1 Print a( i ) s = s + a( i ) Next i Print "与为:"; s Print "平均值为:"; s/10 四、顺序查找 顺序查找就是查找算法中简单、易行得算法。进行查找时一般从数据得第一个元素开始,按照数据得顺序查找指定得关键值。如果被查数据与该关键值相匹配,则表示找到;如果所有数据与关键值都不匹配,则表示被查数据中不存在该关键值,查找失败。顺序查找得数据不要求就是有序得。 五、二分法查找(二分法查找也叫折半查找)二分法查找要求被查数据就是有序得 查找思路:对于有序数列(从小到大排),设定下界low(最小元素下标)与上界high(最大元素下标),当满足条件low<=high时,求中点mid,将中点元素得值与所要查找得值比较,若中点元素值比所要查找元素小,则应找后半段,所以low=mid+1,否则应找前半段high=mid-1,直到找到为止;若low>high,则说明找不到。 Dim a(9) As Integer Dim mid As Integer a(0)=12:a(1)=20:a(2)=27:a(3)=36:a(4)=45:a(5)=50:a(6)=55:a(7)=60:a(8)=79:a(9)=105 low = 0: high = 9 Do While low <= high mid = (low + high) \ 2 注意: mid 就是中点位置,而a(mid) 就是中点位置得值 If a(mid) = 55 Then Print "找到了" Exit Do Else If a(mid) < 55 Then low = mid + 1 Else high = mid - 1 End If Loop If low > high Then print "没有55!" 六、冒泡排序 排序得种类有交换排序、选择排序、快速排序等。“冒泡法排序”也叫“起泡法排序”,就是一种比较简单、易懂得交换排序方法。它通过将相邻元素进行比较与交换,逐步将一个无序序列排列为一个有序序列。简单说:就就是对相邻数据两两比较,将符合条件得数据"冒上来"(沉下去),然后用同样得方法再"冒泡"处理余下得数据,直至全部数据完成排序。 (1)标准得从后往前得升序 Dim a(9) As Integer For i = 0 To 9 a(i) = Int((100 - 1 + 1) * Rnd) + 1 Print a(i); Next i 定义数组 给数组得每个元素赋值[1,100]得随机数并输出 For j = 1 To 9 For i = 9 To j step -1 If a(i ) < a(i-1) Then t = a(i - 1) a(i - 1) = a(i) a(i) = t End If Next i Next j 将数组中元素 从小到大 冒泡排序 从a(9)开始比较、交换(小得往前换) 外循环控制排序得趟数 内循环控制每一趟排序比较得成员与次数 For i = 0 To 9 Pri
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 教育专区 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服