高中信息技术算法与程序设计(VB)知识要点
学习程序设计的方法:1、多阅读程序 2、尝试独立编写程序 3、上机验证自己设计的程序
一、 程序设计基础知识
1、 程序设计语言
程序设计语言:人与计算机交流的语言。
程序:是人们用计算机语言编制的,让计算机去完成一定任务的步骤。
程序设计:设计、编制让计算机完成任务的程序的过程。程序设计的一般步骤为:提出问题、分析问题、解决问题。 2、 算法
算法:就是解决问题的方法和步骤。算法是程序设计的“灵魂”,算法+数据结构=程序。 算法描述方法:一般用自然语言、流程图和伪代码进行描述。
流程图及符号:也称程序框图,它是算法的一种图形化表示方法,形象、直观,容易理解。
开始或结束 输入或输出 判断 处理或运算 二、VB
连接点 流程线 基础知识
VB基础
1、
VB特点:可视化的编程工具、面向对象的设计语言、事件驱动的执行方式。 VB程序设计基本步骤:(1)、分析需求和设计算法 (2)、设计图形用户界面,并为对象设置属性。 (3)、编写程序代码。 (4)、调试、修改程序。 (5)、保存工程并生成可独立运行的程序。
2、 VB应用程序窗体设计
(1)操作界面:标题栏、菜单栏、工具栏、工具箱、工程窗口、窗体、工程管理窗口、属性窗口。 (2)工程:程序设计的整个过程。
对象:应用程序的窗体和控件都是对象,每一个对象都有自己的属性和完成任务的能力。
控件:是指工具箱中的工具在窗体中画出的、能实现一定功能的部件,如文本框,命令按钮等。
属性:描述一个对象的特征。每个对象一般都有默认属性,可在属性窗口中修改属性值,叫静态设置。另一种是用控制代码来修改属性值,叫动态设置,设置格式为:[对象名]·属性名=属性值。 方法:不同的对象有不同的做事方法,调用方法的格式为:[对象名]·方法名[ 参数列表 ]。 控制代码: VB中一个对象可以执行的指令,按照需要编排在一起就形成了控制代码。 (3)常用控件
标签(Label):通常用来显示比较固定的提示性信息。 文本框(TextBox):用来显示和输入数据。 命令按钮(CommandButton):用于接收用户的操作信息,并引发应用程序的某个操作。 图片框(Image):功能强大的图形控件,不但可以显示图片,还可以作为其他控件的容器显示各种绘图方法的输出,或Print方法输出文本。
1
滚动条(ScrollBar):它既可以配合窗口浏览数据,也可以作为数据输入的工具使用。 (4)常用控件的基本属性(静态设置、动态设置)
Caption :标题属性,决定出现在窗体的标题栏上的文本内容。
Text :文本属性,决定窗体中或文本框中显示的内容。
Name :名称属性,作为对象的标识而引用,不会显示在窗体上。 Height :高度属性,决定控件高度。 Width :宽度属性,决定控件宽度。
Left :距左属性,决定控件到屏幕左边界的距离。 Top :距顶属性,决定控件到屏幕顶边界的距离。 Fore Color :前景属性,设置控件的前景色。 Back Color :背景属性,设置控件背景色。
Font:字符格式属性,设置字符的正文字体(Name)、大小(Size)、粗体(Bold)、斜体(Italic)、下画线(Underline)等文字格式。
BorderStyle :边框属性,设置控件的边框风格。
Alignment :标签文字对齐属性,(0)Left Justify时文本左对齐;(1)Right Justify时文本右对齐;设置为(2)Center时文本居中。
AutoSize :大小自动适应属性,设置为False时输入控件Caption中文字超过控件宽度时超出部分不显示,设置为True时,控件宽度自动扩展,以适应文字长度。(True表示“真”值,即“是”;False表示“假”值,即“否”)
Visible :隐藏属性,决定控件是否可见。
Enabled :有效属性,决定控件运行时是否有效。 (5)常用事件
Click :鼠标左键单击。 DblClick :鼠标左键双击。 MouseDown :鼠标左键按下。 MouseUp :鼠标左键弹起。 MouseMove :鼠标移动。
Change :控件的内容已经改变。 KeyDown :键盘上的某键按下。 KeyUp :键盘上的某键弹起。 KeyPress :敲击键盘上的某键。
窗体Load :装载(即启动或称打开)窗体。 窗体Unload :退出 (即结束或称关闭)窗体。 GotFocus :获取焦点。 LostFocus :失去焦点。 SetFocus :设置焦点。
(6)常用方法。[ 对象.]方法[ 参数列表 ]
Print :打印。 Cls :清除。 Move :移动。
End :结束程序的执行。
2
Line :(画直线或矩形) 格式:[对象.] Line [ [Step] (x1,y1)]-(x2,y2)[,颜色][,B[F]]
其中对象可以是窗体或图形框;(x1,y1) ,(x2,y2)为线段的起终点坐标或矩形的左上角右下坐标。关键字B表示画矩形,关键字F表示用画矩形的颜色来填充矩形。
Circle :画圆。
窗体Show :显示窗体。 窗体Hide :隐藏窗体。
3、 VB程序代码
(1) 常量、变量的含义、定义及使用。
常量:在程序进行过程中不变的量,在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”等,双引号中字符,不包括双引号本身。
符号常量:如果多次用到同一个常量,则可用一个有意义的名字表示这个常量。
变量:是在程序运行过程中其值可以改变的量,变量的实质是内存中存储数值的区域。
变量名的命名规则为:变量名的第一个字符必须是字母;变量名只能由字母、数字和下划线组成,不能含有小数点、空格等字符;组成变量名的字符数不得超过255个字符;不能用VB保留字完全作为变量名,如语句定义符、函数名等。变量名不能与过程名和符号常量名相同,更不能用VB的关键字作为变量名;变量名不区分大小写。
(2) 基本数据类型
(整型)Integer、(长整型)Long、(单精度型)Single、(双精度型)Double、(字符串型)String、(布尔型)Boolean、(日期型)Date 表示范围:
(整型)Integer (-32768 —— 32767,存储为 16 位 , 2 个字节) (长整型)Long (-21亿 —— 21亿,可以表示人口数量) (布尔型)Boolean (True 真、是 或 False假、非)
(字符串型)String (定长字符串:0——65535个字符,不定长字符串:0——20亿个字符)
(日期型)Date(100/1/1——9999/12/31)日期型数据专门用来处理日期和时间。VB采用一对“#”把日期和时间的值括起来,如#2003/08/20#表示2003年8月20日。
常量和变量的命名、声明及赋值
符号常量的声明:Const 常量名 [As 常量类型] = 常量值 如:Const pi As Single = 3.14159 变量的声明:Dim <变量名 >As <变量类型> 如:Dim a As Integer 变量的赋值
VB中使用Let语句给变量赋值,其形式如下:
[Let] 变量 = 表达式 其中,方括号[ ]表示这部分内容是可选的,通常可以省略该关键字。 ...........
(3) 运算符和表达式
运算符:
1、 算术运算:
+ 加 -- 减 *乘
^ 指数 例:2^2 = 4 / (浮点)除 例:5 / 2 = 2.5 \\ 整除 例: 5 \\ 2 = 2
3
Mod 求余数 例:5 Mod 2 = 1
2、 关系运算:
= 赋值 < 小于号 <> 不等于 > 大于号
>= 大于等于号 < =小于等于号
注意:关系表达式的运算结果为布尔值True 或 False
例:3 > 2 结果为 True(真或是)
3、
逻辑运算:
Not(取反)And(与) Or(或)
运算结果为布尔型(Boolean)True 或 False 逻辑运算符的优先级为:No > And > Or 4、 日期运算符与日期表达式:
日期表达式是用日期运算符“+”或“-”将算式表达式、日期型常量、日期型变量、日期函数等连接起来的式子。
如:表达式“#2003/09/01# +30”的运算结果是“2003-10-1”;表达式“#2003/10/20# - #2003/10/10#”的运算结果为整数10 5、 字符运算:
字符串连接符为“+”和“&” “123” + “45” = “12345” “123” & “45” = “12345” 123 + “45” = 168 “123” + 45 = 168
运算符的执行顺序:
在VB中,当一个表达式中同时出现多种运算符时,运算次序由运算符的优先级决定,优先级高的运算符先运算,优先级相同的从左向右进行运算。不同性质的运算符优先级如下。
算术运算符 > 字符串运算符 > 关系运算符 > 逻辑运算符
(4) 常用内部函数的含义及使用方法
数学函数:
Abs(x) 求x 的绝对值,例:abs(-3.6) = 3.6 Sqr(x) 求 x 的平方根,例:sqr(100) = 10
Int(x) 求≤x的最大整数 例:int(3.6) = 3 int(--3.6) = --4 Rnd(x) 产生[0,1)之间的随机数(不包括1)
Randomize 称为随机种子命令。为了能产生真正意义上的随机数,就需要在使用Rnd之前,执行一次Randomize命令。因为Form_Load过程是在窗体装入是就执行的过程,所以Randomize常常写在这个过程里。 执行过Randomize之后,产生的随机数就不相同了。
LoadPicture返回图片对象。格式:LoadPicture([filename], [size], [colordepth],[x,y]) Sin(x) 求X的正弦值 例:Sin(3.14/6)≈0.5 Cos(x) 求X的余弦值 例:Cos(3.14/3) ≈0.5 Tan(x) 求X的正切值 例:Tan(3.14/4) ≈1 Atn(x) 求X的反正切值 例:Atn(1) ≈0.785
Exp(x) 求以e为底,以X为指数的值 例:Exp(1) =2.71828 Log(x) 求以e为底的X的对数 例:Log(2.71828)=1
注意:使用三角函数时,参数应是弧度,如数学中sin300应写为:sin(30*3.14159/180)
字符串函数:
Len(字符串) 求字符串的长度 例:Len(“hello”) = 5
Left(字符串,截取长度) 截取字符串左边部分 例: Left(“hello”,2) = “he” Mid(字符串,起始位置,截取长度) 例:Mid(“hello”,2,2) = “el” Right (字符串,长度)
截取字符串右边部分。例: Right (“hello”,2) = “lo”
String(数值,字符) 生成指定长度与指定字符的字符串,例:String(3,”9”) = ”999”
4
常用转换函数:
Val(字符串) 将字符串转换为数值 Str(数值) 将数值转换为字符串 Chr(字符代码) Asc(字符)
Tab定位函数:
Tab[(n)] 可选的 n 参数是在显示或打印列表中的下一个表达式之前移动的列数。若省略此参数,则 Tab 将插入点移动到下一个打印区的起点。
人机交互函数:
InputBox( ) 语法格式为:InputBox( 提示[,标题][,默认值][,X坐标][,Y坐标]) MsgBox( ) 语法格式为:MsgBox(提示信息[,按钮][,标题] )
4、 程序的三种基本结构(顺序、分支、循环)
(1) 顺序结构语句:赋值语句,print等。
程序设计的顺序结构
顺序结构:代码按照由上到下的顺序一行一行地执行。程序执行过程中没有分支、没有重复,这种结构称为顺序结构。
例题:交换两个变量中的数据。 Private Sub cmdSwap_Click() Dim x As Single, y As Single Dim m As Single x = Val(txtsx.Text) y = Val(txtsy.Text)
0m = x: x = y: y = m '交换数据 txtdx.Text = Str(x) txtdy.Text = Str(y) End Sub
Private Sub cmdEnd_Click() End End Sub
(2) 分支结构语句:掌握简单两层嵌套的If条件语句。
程序设计的分支结构 行If语句
行If是指在一行中写完的If语句。其一般格式为: 格式一:If条件Then语句
执行这种形式的If语句时,首先对条件进行判断。若条件成立,则执行Then后面的语句;若条件不成立,则执行If语句后继程序行的语句
格式二:If条件 Then 语句 1 Else 语句 2 例题:输入三个不相同的数,求出其中最小数。 Private Sub Form_Click()
Dim a As Single, b As Single, c As Single Dim Min As Single
a = InputBox(\输入a\输入框\ b = InputBox(\输入b\输入框\ c = InputBox(\输入c\输入框\ If a < b Then Min = a Else Min = b If c < Min Then Min = c Print \最小数=\End Sub
执行这种形式的语句时,先进行判断。若条件成立,则执行语句1;否则执行语句2。 块If语句
上述If-then语句只能根据条件的真假是否执行一条语句,当Then部分和Else部分包含的内容较多时,则可选用“块If语句”结构。 格式三:If 条件 Then
5
高中信息技术VB知识要点
![](/skin/haowen/images/icon_star.png)
![](/skin/haowen/images/icon_star.png)
![](/skin/haowen/images/icon_star.png)
![](/skin/haowen/images/icon_star.png)