重点高中信息技术VB知识要点.docx
《重点高中信息技术VB知识要点.docx》由会员分享,可在线阅读,更多相关《重点高中信息技术VB知识要点.docx(12页珍藏版)》请在冰豆网上搜索。
![重点高中信息技术VB知识要点.docx](https://file1.bdocx.com/fileroot1/2022-12/31/a478f070-58b0-4f91-9586-45f487084fde/a478f070-58b0-4f91-9586-45f487084fde1.gif)
重点高中信息技术VB知识要点
高中信息技术算法与程序设计(VB)知识要点
学习程序设计的方法:
1、多阅读程序2、尝试独立编写程序3、上机验证自己设计的程序
一、程序设计基础知识
1、程序设计语言
程序设计语言:
人与计算机交流的语言。
程序:
是人们用计算机语言编制的,让计算机去完成一定任务的步骤。
程序设计:
设计、编制让计算机完成任务的程序的过程。
程序设计的一般步骤为:
提出问题、分析问题、解决问题。
2、算法
算法:
就是解决问题的方法和步骤。
算法是程序设计的“灵魂”,算法+数据结构=程序。
算法描述方法:
一般用自然语言、流程图和伪代码进行描述。
输入或输出
判断
处理或运算
连接点
流程线
开始或结束
流程图及符号:
也称程序框图,它是算法的一种图形化表示方法,形象、直观,容易理解。
二、VB基础知识
1、VB基础
VB特点:
可视化的编程工具、面向对象的设计语言、事件驱动的执行方式。
VB程序设计基本步骤:
(1)、分析需求和设计算法
(2)、设计图形用户界面,并为对象设置属性。
(3)、编写程序代码。
(4)、调试、修改程序。
(5)、保存工程并生成可独立运行的程序。
2、VB应用程序窗体设计
(1)操作界面:
标题栏、菜单栏、工具栏、工具箱、工程窗口、窗体、工程管理窗口、属性窗口。
(2)工程:
程序设计的整个过程。
对象:
应用程序的窗体和控件都是对象,每一个对象都有自己的属性和完成任务的能力。
控件:
是指工具箱中的工具在窗体中画出的、能实现一定功能的部件,如文本框,命令按钮等。
属性:
描述一个对象的特征。
每个对象一般都有默认属性,可在属性窗口中修改属性值,叫静态设置。
另一种是用控制代码来修改属性值,叫动态设置,设置格式为:
[对象名]·属性名=属性值。
方法:
不同的对象有不同的做事方法,调用方法的格式为:
[对象名]·方法名[参数列表]。
控制代码:
VB中一个对象可以执行的指令,按照需要编排在一起就形成了控制代码。
(3)常用控件
标签(Label):
通常用来显示比较固定的提示性信息。
文本框(TextBox):
用来显示和输入数据。
命令按钮(CommandButton):
用于接收用户的操作信息,并引发应用程序的某个操作。
图片框(Image):
功能强大的图形控件,不但可以显示图片,还可以作为其他控件的容器显示各种绘图方法的输出,或Print方法输出文本。
滚动条(ScrollBar):
它既可以配合窗口浏览数据,也可以作为数据输入的工具使用。
(4)常用控件的基本属性(静态设置、动态设置)
Caption:
标题属性,决定出现在窗体的标题栏上的文本内容。
Text:
文本属性,决定窗体中或文本框中显示的内容。
Name:
名称属性,作为对象的标识而引用,不会显示在窗体上。
Height:
高度属性,决定控件高度。
Width:
宽度属性,决定控件宽度。
Left:
距左属性,决定控件到屏幕左边界的距离。
Top:
距顶属性,决定控件到屏幕顶边界的距离。
ForeColor:
前景属性,设置控件的前景色。
BackColor:
背景属性,设置控件背景色。
Font:
字符格式属性,设置字符的正文字体(Name)、大小(Size)、粗体(Bold)、斜体(Italic)、下画线(Underline)等文字格式。
BorderStyle:
边框属性,设置控件的边框风格。
Alignment:
标签文字对齐属性,(0)LeftJustify时文本左对齐;
(1)RightJustify时文本右对齐;设置为
(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:
结束程序的执行。
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”、”VisualBasic”、”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常量类型]=常量值如:
ConstpiAsSingle=3.14159
变量的声明:
Dim<变量名>As<变量类型>如:
DimaAsInteger
变量的赋值
VB中使用Let语句给变量赋值,其形式如下:
[Let]变量=表达式 其中,方括号[ ]表示这部分内容是可选的,通常可以省略该关键字。
(3)运算符和表达式
运算符:
1、算术运算:
+加--减*乘
^指数 例:
2^2=4
/(浮点)除 例:
5/2=2.5
\整除 例:
5\2=2
Mod求余数 例:
5Mod2=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)=3int(--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”
常用转换函数:
Val(字符串)将字符串转换为数值
Str(数值)将数值转换为字符串
Chr(字符代码)
Asc(字符)
Tab定位函数:
Tab[(n)]可选的n参数是在显示或打印列表中的下一个表达式之前移动的列数。
若省略此参数,则Tab将插入点移动到下一个打印区的起点。
人机交互函数:
InputBox()语法格式为:
InputBox(提示[,标题][,默认值][,X坐标][,Y坐标])
MsgBox()语法格式为:
MsgBox(提示信息[,按钮][,标题])
4、程序的三种基本结构(顺序、分支、循环)
(1)顺序结构语句:
赋值语句,print等。
程序设计的顺序结构
顺序结构:
代码按照由上到下的顺序一行一行地执行。
程序执行过程中没有分支、没有重复,这种结构称为顺序结构。
例题:
交换两个变量中的数据。
PrivateSubcmdSwap_Click()
DimxAsSingle,yAsSingle
DimmAsSingle
x=Val(txtsx.Text)
y=Val(txtsy.Text)
0m=x:
x=y:
y=m'交换数据
txtdx.Text=Str(x)
txtdy.Text=Str(y)
EndSub
PrivateSubcmdEnd_Click()
End
EndSub
(2)分支结构语句:
掌握简单两层嵌套的If条件语句。
程序设计的分支结构
行If语句
行If是指在一行中写完的If语句。
其一般格式为:
格式一:
If条件Then语句
执行这种形式的If语句时,首先对条件进行判断。
若条件成立,则执行Then后面的语句;若条件不成立,则执行If语句后继程序行的语句
格式二:
If条件Then语句1Else语句2
例题:
输入三个不相同的数,求出其中最小数。
PrivateSubForm_Click()
DimaAsSingle,bAsSingle,cAsSingle
DimMinAsSingle
a=InputBox("输入a","输入框")
b=InputBox("输入b","输入框")
c=InputBox("输入c","输入框")
IfaIfcPrint"最小数=";Min
EndSub
执行这种形式的语句时,先进行判断。
若条件成立,则执行语句1;否则执行语句2。
块If语句
上述If-then语句只能根据条件的真假是否执行一条语句,当Then部分和Else部分包含的内容较多时,则可选用“块If语句”结构。
格式三:
If条件Then
语句块
EndIf
例题:
当从输入一个数时,当该数大于或等于60时显示"及格",该数小于60时显示"不及格"。
PrivateSubCommand1_Click()
DimaAsSingle
a=Val(Text1.Text)
Ifa>=60Then
Label1.Caption="及格"
EndIf
Ifa<60Then
Label1.Caption="不及格"
EndIf
EndSub
格式四:
If条件Then
语句块1
Else
语句块2
EndIf
例题:
编写程序,求函数Y的值(当x≤0时,y=3x+1;当x>0时,y=4x+1)。
PrivateSubForm_Click()
DimxAsSingle
DimyAsSingle
x=Val(InputBox("请输入变量x"))
Ifx<=0Then
y=3*x+1
Else
y=4*x+1
EndIf
Print"y=";y
EndSub
(3)循环结构语句:
掌握简单两层嵌套。
程序设计的循环结构
For-Next循环
For循环变量一般形式是:
For循环变量=初值To终值Step循环变量增量
循环体
Next循环变量
例题1:
求s=1+2+3+4.....+100
PrivateSubForm_Click()
DimiAsInteger
DimsumAsInteger
sum=0
Fori=1To100
sum=sum+i'循环体
Nexti
Print"sum=";sum
EndSub
Do-Loop循环
For-Next循环的次数是确定的,但是有的问题只知道循环结束的条件,重复执行的次数事先并不知道,这是需要Do-Loop循环
格式一:
DoWhile条件
循环体
Loop
例题:
求最大公约数
PrivateSubCommand1_Click()
DimaAsInteger
DimbAsInteger
DimrAsInteger
a=Val(Text1.Text)
b=Val(Text2.Text)
r=aModb
DoWhiler<>0
a=b
b=r
r=aModb
Loop
Text3.Text=Str(b)
EndSub
PrivateSubCommand2_Click()
End
EndSub
当VB执行DoWhile-Loop循环时,先判断指定的条件是否为真,当条件为真,执行循环体,条件为假时退出循环。
格式二:
Do
循环体
LoopUntil条件
A
P
N
这种循环的执行过程如图所示。
进入循环体后,先执行一次循环体A,然后再检查条件P是否成立。
如果不成立,就重复执行循环体A,直到条件P成立退出循环体。
例题:
如果我国人口每年以平均1.5%的速度增长,问多少年后我国人口达到或超过15亿?
设现在人口为12.3亿。
PrivateSubForm_Click()
DimpAsSingle
DimrAsSingle
DimnAsInteger
r=0.015
n=0
Do
p=p*(1+r)
n=n+1
LoopUntil
Printn;"年后","人口=";p
EndSub
5、算法要求:
(1)在程序中利用公式进行计算。
(2)编程求简单的分段函数的值。
(3)在程序中运用累加、计数、累乘。
(4)在程序中比较大小、求最值。
(5)在程序中用穷举法求不定方程的正整数解。