VB课件第2章数据与表达式Word文档下载推荐.docx
- 文档编号:20167835
- 上传时间:2023-01-17
- 格式:DOCX
- 页数:19
- 大小:33.50KB
VB课件第2章数据与表达式Word文档下载推荐.docx
《VB课件第2章数据与表达式Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《VB课件第2章数据与表达式Word文档下载推荐.docx(19页珍藏版)》请在冰豆网上搜索。
存储
整数
Integer
%
-32768到32767
2字节
长整数
Long
&
-2147483648到2147483647
4字节
单精度浮点数
Single
!
-3.402823E+38到-1.401298E-45
1.401298E-45到3.402823E38
双精度浮点数
Double
#
-1.79769313486232D+308到-4.94065645841247D-324
4.94065645841247D-324到1.79769313486232D+308
8字节
货币
Currency
@
-922337203685477.5808到922337203685477.5807
字节型
Byte
0~255
1字节
变长字符串
String
$
0~20亿字节
定长字符串
String*Size
1~65535字节
布尔型
Boolean
True或False
日期型
Date
100.1.1~9999.12.31
对象型
Object
任何对象的引用
可变型(数值)
Variant
达Double范围,任何数值
16字节
可变型(字符)
达变长字符串长度
2.1数值型(Numeric)
数值型数据分为整型数和实型数两类。
其中整型数又分为整数、长整数和字节型数,实型数分为定点数和浮点数,定点数分为单精度数和双精度数,浮点数亦分为单精度浮点数和双精度浮点数。
一、整型(Integer)
1、整数(Integer)
(1)十进制数:
0~9组成,其取值范围:
-32768----+32767
(2)八进制数:
0~7组成,前面冠以&
或&
O,其取值范围:
0~&
177777;
例如:
347&
O1277-&
233
(3)十六进制数:
0~9和A~F(a~f)组成,前面冠以&
H,其取值范围:
H0~&
HFFFF
H32&
H5F-&
Haef
2、长整数(Long)
(1)十制数:
其取值范围:
-2147483648~-+2147483647
前面冠以&
O,后面以&
结束;
0&
~&
37777777777&
;
347&
&
O1277&
-&
233&
H,后面以&
其取值范围:
H0&
HFFFFFFFF&
H32&
H5F&
Haef&
3、字节型(Byte)以一个字节(8位)存储的无符号整数,其取值范围:
0~255
二、实型
实型数是带有小数部分的数,分为定点数和浮点数,浮点数由三部分组成:
符号、指数、尾数。
1、单精度数(Single)最多7位有效数字的数。
(1)定点数:
-3.4120.0.000567-333.4567
(2)浮点数:
以“E或e”表示底数10的科学计数法。
-3.4E5120.34E-5.00789E-44
2、双精度浮点数(double)最多15位有效数字的数。
-3145.54667334444
以“D或d”表示底数10的科学计数法。
-3.1234567D53
3、货币类型数据(Currency)
为钱款设置的数据,精确到小数点后四位,多于4位被四舍五入截去。
3.5678
2.2字符型(String)
由放在一对双引号中的ASCII字符(除双引号和回车符之外)、汉字及其他可打印字符组成。
例子:
”Iamastudent.”
字符串中包含的字符个数称为字符串长度。
1、变长字符串:
字符串的长度是不固定的。
长度范围:
2、定长字符串:
字符串的长度是固定的。
0~65535字节
通常需要用语句定义,例如:
Dimmy_vasString*20
2.3布尔型(Boolean)
True逻辑真-1(或非零数)
False逻辑假0
2.4日期型(Date)
用来表示日期和时间,用“#”括起。
#1999-11-25#
#11/18/2001##2002-02-2510:
28Am#
日期范围:
时间范围:
0:
00:
00~23:
59:
59
3、常量与变量
常量在程序执行期间不发生变化
变量代表内存中指定的存储单元,根据需要赋不同的值
3.1常量
VB常量分3种:
文字常量(字面常量)、符号常量和系统常量。
1、文字常量
“Thisisastring”这是一个字符串常量,长度为16
12598这是一个十进制数
为了显式的指明常数的类型,可以在常数后面加上类型符:
%整型
长整型
单精度浮点型
#双精度浮点型
@货币型
$字符串型
2、符号常量(需要用户声明)
对常数值的记忆(助记符)
格式:
Const<
常量名>
[As<
类型>
]=<
表达式>
例:
圆周率
constpi=3.1415926
<
是常数的名称,是用户定义的标识符
As表示类型
1)说明符号常量时,可以在常量名后加上类型符
constone&
=1
constoneaslong=1
2)在程序中引用符号常量时,通常省略类型说明符
a=one
3)类型说明符不是符号常量的组成部分
constnum#=56‘双精浮点型
constnum$=”56”‘字符型
4)经过说明的符号常量只是常数值的名字,不能在程序中修改它的值。
5)Const必须放在程序的常量使用前的位置。
PrivatesubForm_Activate()
Constpi#=3.141592653589793
r=inputbox(“请输入半径:
”)
s=pi*r^2
print“圆面积=:
”;
S
endsub
3、系统常量
系统常量位于对象库中。
可在菜单项“视图”-“对象浏览器”中查阅。
系统常量不需说明,可直接在程序中使用。
form1.print“Iama”vbcrlf“goodstudent.”
3.2变量
~:
程序执行过程中其值可以变化的量。
(内存单元)
每个变量都有一个名字和相应的数据类型。
程序通过变量名来引用变量的值。
abmy_stu
1.变量命名规则
(1)变量名的第一个字符必须是字母或汉字;
(2)变量名字符个数<
=255
(3)不能使用关键字作变量名;
合法变量名:
ax1n0_1a2csum%namemyform姓名班级
不合法变量名
2ax+ya,bs$bprintαπ
2.变量的说明
在VB中可以显式或隐式方式说明变量和它的类型
(1)用说明语句说明(显式说明)
用说明语句可以显式的定义变量。
其作用就是在程序中使用变量之前,通知VB编译器要开辟的存储单元及其类型。
说明符>
变量名>
|<
类型符>
][,<
]]…
其中:
说明符:
是VB用于变量说明的关键字Dim|Static|Public|Private
类型:
可以是VB提供的各种标准类型名称或用户自定义类型标识符。
缺省As子句时,被说明变量为可变类型(variant)。
1)Dimageasinteger把age定义为整型变量,亦可为:
Dimage%
2)Dimtotal#把total定义为双精度变量
说明:
1)、Public、Private、Dim和Static语句定义的变量作用范围是不同的(详见第6章)。
范围
说明
过程(局部)级
在过程内部使用Dim或Static
模块(文件)级
在模块/窗体开头(通用声明段)加Dim或Private
工程(全局)级
在模块开头加Public
如果dim语句出现在窗体代码的通用声明段位置,则窗体以及窗体中各控件的事件驱动程序都能够使用这些变量。
(模块级)
在过程内部用dim语句声明的变量,只有在该过程中执行才存在。
过程已结束,系统会把这些存储单元收回,变量的值也就消失了。
(过程级)
2)、当变量说明后,程序中为其赋值时,自动转换为变量说明类型。
DimaasInteger
a=1.5
printa
则a变量中的值为2(四舍五入求整)。
(2)隐式说明
在vb中,如果使用一个变量之前不事先经过声明,称为隐式声明。
使用时系统会以该名字自动创建一个变量,并默认为可变类型。
(Variant)
一般情况下,应该显式声明后再使用。
否则往往会导致一些难以查找的错误,比如变量名在程序中输错了。
Temp输成了tenp。
要做到这一点,只须在程序模块的声明段加入如下语句:
OptionExplicit当程序中出现未定义的变量时提示错误。
也可以在“工具”菜单中选取“选项”,然后单击“编辑器”选项卡,复选“要求变量声明“选项。
注:
在程序设计中,应该养成对变量显式声明的习惯,以增加程序的正确性和可读性。
OptionExplicit
PrivateSubCommand1_Click()
a=1
EndSub
PrivateSubForm_Activate()
Dima
4运算符与表达式
运算符(即操作符)是对数据的加工。
被运算的数据,称为运算量或操作数。
4.1算术运算符与数值表达式
^乘方3^2
*乘法3*2
/浮点除(和除法相同)
\整除(取整数部分)
(先对操作数四舍五入取整,然后进行除法运算,最后运算结果取整数部分)
a=9.56
b=4.4
c=a\b
Printc
即10/4
Mod(取模)求余数5mod3=2
如果左右操作数为实数,则先四舍五入取整,后求余数。
运算结果取决于左操作数的符号:
左操作数为正数,运算结果为正数;
若左操作数为负数,则结果为负数。
10mod42
-5mod2-1
-5mod–2-1
5mod–21
+加法
-减法
运算优先级:
^
-
*/
\
Mod
+-
4.2字符串连接
自动将非字符类型数据转换为字符型再进行连接
(注意操作数与运算符之间要留有空格)
+不能自动转换,仅字符连接
a=”Visual”,b=”Basic”
a&
b值为“VisualBasic”
5&
b值为“Visual5Basic”
a+5+b则显示“类型不匹配“错误
4.3关系运算与布尔运算
关系运算和布尔运算的值都是布尔值。
它们通常用在程序的条件判断中。
1、关系运算
关系运算符用来比较两个数的大小。
关系表达式的运算结果是一个布尔值,即真(True)或假(False)。
-10
(1)数值型数据按其数值大小进行比较;
2+3>
7
(2)字符串数据按ASCII码进行比较;
“ABCDE”<
”abcde”其值为True或–1
常见字符ASCII值顺序:
“空格”<
0<
……9<
A<
……Z<
a<
……<
z….
(3)汉字按内码排列顺序
(4)日期型数据看作“YYYYMMDD”的8位整数,按数值大小比较
(5)单精度的或双精度数的比较,应避免判断两数是否相等
VB6.0还有一个like运算符,可以使用通配符?
、*比较。
a=”张老三”
printalike“张*”
运算结果:
True
2、布尔(逻辑)运算符
布尔运算符的左右操作数要求为布尔值。
用布尔运算符连接两个或多个布尔量组成的式子称为逻辑表达式或布尔表达式。
(1)Not非
not英语>
=60(英语<
60)
Not3>
2false
(2)And与
-1and–1-1
3>
2and2>
1True
2and2<
1False
3<
(3)Or或
2or2>
2or2<
(4)Xor异或
(5)Eqv等价
(6)Imp蕴含
布尔运算真值表
X
Y
NotX
XAndY
XOrY
XXorY
XEqvY
XImpY
-1
3、布尔运算符的优先级
Not→And→Or→Xor→Eqv→Imp
注意:
[a,b](a<
=x<
=b)
应写为:
=xandx<
=b
4.4表达式的运算顺序
函数运算→算术运算→关系运算→布尔运算
a/Sin(5*x)^3*b–4
算术运算符两边的操作数应为数值型数据,若是字符或布尔型,自动转换为数值型后再运算。
39-true结果是40,因为true先转换成了数值-1
False+10+“4”结果为14
5、常用内部函数
在VB中有两类函数:
内部函数和用户自定义函数。
用户自定义函数是由用户自己根据需要编写的程序段。
内部函数则是VB系统提供的有多种用途的程序段,用户直接调用即可。
内部函数可人为分为5类:
数学函数、字符串函数、日期和时间函数、随机函数和转换函数。
函数的一般调用格式:
函数名>
([<
参数表])
(1)若有多个参数,则以逗号隔开;
(2)函数以表达式形式调用;
5.1数学函数
1、三角函数
(1)Sin(x)
功能:
计算x的正弦值。
x以弧度为单位。
(2)Cos(x)
计算x的余弦值。
(3)Tan(x)
计算x的正切值。
角度转换为弧度:
1度=π/180=3.14159/180
(4)Atn(x)
计算x的反正切值。
函数值以弧度为单位。
2、绝对值函数:
Abs(x)
取x的绝对值。
x为数值表达式,函数值与x的类型相同;
3、指数函数:
Exp(x)
计算e的x次幂。
e=2.71828…。
4、对数函数:
Log(x)
计算以e为底x的自然对数。
e=2.71828…,x大于0
常用对数可用换底公式:
LgX=LnX/Ln10
5、符号函数:
Sgn(x)
返回一个整数,用来指示x的符号。
x>0时返回1,x=0时返回0,x<0时
返回一1。
6、平方根函数:
Sqr(x)
计算x的算术平方根,x大于等于0。
高次方根可用表达式:
x^(1/n)
7、求整函数:
Int(x)
得到不超过x的最大整数。
x为数值表达式
Int(5.6)的值为5。
Int(一3.2)的值为一4。
8、取整数函数:
Fix(x)
得到x的整数部分。
x为数值表达式,函数值为整数。
Fix(3.6)的值是3,Fix(一7.8)的值是一7。
9、四舍五(六)入取数函数:
Round(x[,n])
返回一个数值,该数值是按照指定的小数位数n进行四舍六入运算的结果。
如果n值缺省返回一个按照四舍六入运算的整数值。
“四舍六入法”可以概括为“四舍六入。
四舍五入考虑:
五后非零就进一,五后皆零看奇偶,五前为偶应舍去,五前为奇要进一。
”
Round(57.5)的值为58
Round(58.5)的值为58
Round(58.51)的值为59
Round(58.6)的值为59
5.2字符串函数
1、删除空白字符函数
(1)LTrim(x)
去掉字符串x左端的空格部分。
(2)RTrim(x)
去掉字符串x右端的空格部分。
(3)Trim(x)
去掉字符串x左端和右端的空格部分。
2、字符串截取函数
(1)取左子串函数:
Left(x,n)
取字符串x左边的n个字符。
x="
abc字符”
y=Left(x,3)
z=Left(x,4)
则y中的值为“abc”,z中的值为“abc字”。
在VB中,一个汉字或一个全角符号算一个字符位置。
(2)取右子串函数:
Right(x,n)
取字符串x右边的n个字符。
(3)取中子串函数:
Mid(x,m[,n])
设置或返回字符串x中从第m个字符开始的n个字符;
n的默认值为:
字符个数-m+1。
y=Mid(x,3,2)
则y的值为“c字”。
3、字符串长度测试函数:
Len(x)
得到字符串x的长度(字符个数)。
x=“rabc字符AB”
则len(x)的值为8。
4、测字符串位置函数:
Instr([n,]x,y)
得到字符串y在字符串x中第一次出现的位置。
选项n指定在x中搜索的开始位置。
x=“abc字符abc”
y=“bc”
I%=Instr(x,y)
J%=Instr(4,x,y)
则i的值为2,j的值为7。
5、求空格符字符串函数:
Space(n)
得到由n个空格组成的字符串。
6、求重复字符的字符串函数:
String(n,x)
将字符串x中的第一个字符重复n次。
y=String(5,”abc”)
则y的值为字符串“aaaaa”。
7、字母大小写转换函数
(1)LCase(x)
把字符串x中的字母都转换为小写。
(2)UCase(x)
把字符串x中的字母都转换为大写。
x=”abcl23字符”
y=UCase(x)
则y的值为“ABCl23字符”。
8、值变串函数:
Str(x)
返回数值x的字符串表示。
x=3.1416
y=Str(x)
则y的值为字符串“3.1416”。
9、串变值函数:
Val(x)
返回在字符串X中包含的字符前的数值。
x$=”123ab456”
a=Val(x$)
则a的值为123。
5.3日期和时间函数
1、NOW
返回系统当前的日期时间。
a=now
则a中值为:
2004-9-69:
39:
15
2、Date
返回系统的当前日期,其格式yyyy—mm—dd(年—月—日)。
d2=Date
假如当前的日期是2008年1月12日,则d2的值为2008—1—12。
3、Day(x)
得到日期时间序列数x中的日(天)数(1—31)。
4、Weekday(x)
得到日期时间序列数x中的星期几,1=星期日,2=星期一,7=星期六。
5、Month(x)
得到日期时间序列数x中的月份(1—12)。
6、Year(x)
得到日期时间序列数x中的公元年份。
返回值为整数。
PrintYear(Now)
显示2004
7、Hour(x)
得到日期时间序列数x中的小时数(0~23)。
8、Minute(x)
得到日期时间序列数x中的分钟数(0—59)。
9、Second(x)
得到日期时间序列数x中的秒数(0—59)。
10、Timer
得到自午夜以来过去的时间秒数(0—86400)。
两个Timer函数之间的最小时间间隔为0.055秒。
PrintTimer
可能会显示“74189.67”。
11、Time
返回系统的当前时间,其格式为hh:
mm:
ss(时:
分:
秒)。
例,t1=Time$
假如当前的时间是8点12分36秒,则t1的值为“08:
12:
36"
。
5.3随机函数
1、(伪)随机数函数Rnd([x])
得到开区间(0,1)的(伪)随机数。
x是一个单精度的数值或数值表达式。
函数值大于等于0,小于1。
x<0以x为种子,每次返回相同的随机数;
x>0每次产生随机数序列中的下一个随机数;
x=0得到最近产生的随机数;
不指定同x>0
如果M和N为整数,且M<N,则下面的表达式得到[M,N]之间的随机整数。
Int((N—M十1)*Rnd十M)
产生[5,100]间的随机整数:
INT(96*Rnd+5)
3、Randomize语句
Randomize[<
x>
]
设置随机数种子
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VB 课件 数据 表达式