续程序设计基础详解演示文稿_第1页
续程序设计基础详解演示文稿_第2页
续程序设计基础详解演示文稿_第3页
续程序设计基础详解演示文稿_第4页
续程序设计基础详解演示文稿_第5页
已阅读5页,还剩33页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

续程序设计基础详解演示文稿目前一页\总数三十八页\编于九点(优选)续程序设计基础目前二页\总数三十八页\编于九点数据类型基本数据类型1字符串(String)是一个字符序列,由ASCII字符组成。放在双引号的若干个字符,长度为0的为空字符。分为变长字符串0-2的31幂,定长字符串为2的16次幂。目前三页\总数三十八页\编于九点2.数值整型数整数Interger-32768~32767两个字节长整数Long四个字节浮点数符号、指数及尾数12.345E2单精度浮点数Single4个字节双精度浮点数Double8个字节目前四页\总数三十八页\编于九点3货币Currency8个字节,小数点后四位,其余四舍五入4变体(Variant)任何值(数值,字符串,日期时间)5其他数据类型字节Byte,布尔Boolean,日期Date对象Object,Decimal数据类型目前五页\总数三十八页\编于九点目前六页\总数三十八页\编于九点用户定义的数据类型Type数据类型名数据类型元素名as类型名数据类型元素名as类型名。。。EndType举例目前七页\总数三十八页\编于九点

TypeStudent XhAsString XmAsString XbAsString NlAsInteger CjAsSingleEndType例如:对于一个学生的“学号”、“姓名”、“性别”、“年龄”、“入学成绩”等数据,为了处理数据的方便,常常需要把这些数据定义成一个新的数据类型(如Student类型)。目前八页\总数三十八页\编于九点记录类型中可以变长字符串,也可以是定长字符串记录类型的定义必须放在模块(标准和窗体)的声明部分。在记录类型中不能使用动态数组。在随机文件操作中,记录类型数据有着重要作用枚举类型目前九页\总数三十八页\编于九点保留字文字常量符号常量在程序中,某个常量多次被使用,则可以使用一个符号来代替该常量,这样不仅在书写上方便,而且有效地改进了程序的可读性和可维护性。

VB中使用关键字Const声明符号常量。其格式如下:

Const常量名

[As类型]=常数表达式

或:Const常量名

[类型符号]=常数表达式例如:

ConstPIAsDouble=2.1415926535等价于:

ConstPI#=2.1415926535常量目前十页\总数三十八页\编于九点例如,要将文本框Text1的前景颜色设置为红色,可以使用下面的语句:

Text1.ForeColor=vbRed

这里的vbRed就是系统常量。这比直接使用16进制数来设置要直观得多。2.3.3系统常量

VB系统提供的应用程序和控件的系统定义常数。它们存放于系统的对象库中,在“对象浏览器”中的VisualBasic(VB)和VisualBasicforapplications(VBA)对象库中列举了VisualBasic的常数常量目前十一页\总数三十八页\编于九点2.4.1变量的命名规则

1.以字母或汉字开头,后可跟字母、数字或下划线组成.2.变量名最长为255个字符;

3.VB中不区分变量名的大小写,不能使用VB中的关键字;

4.字符之间必须并排书写,不能出现上下标以下符是合法的变量名:

a,x,x3,BOOK_1,sum5

以下标识符是非法的:

3s以数字开头s*T出现非法字符*

-3x以减号开头bowy-1出现非法字符-(减号)if使用了VB的关键字变量目前十二页\总数三十八页\编于九点2.4.2变量声明

1.用Dim语句显式声明变量形式:Dim变量名[AS类型] Dim变量名[类型符]

例:

DimabAsinteger,sumAssingle

等价于Dimab%,sum!变量目前十三页\总数三十八页\编于九点用Static声明,定义静态变量及数组变量。每次引用该变量,其值会继续保留。Public用来在标准模块中定义全局变量或数组。Redim用来重新定义数组DefType可以在模块中声明部分定义变量。DefType字母范围。目前十四页\总数三十八页\编于九点一个变量未被显式定义,则被隐含说明为变体类型。VariantDefType只对它所在的模块起作用。使用时可以省略类型说明符。目前十五页\总数三十八页\编于九点下面是一个很简单的程序,其使用的变量a,b,Total都没有事先定义。PrivateSubForm_Click()Total=0a=10:b=20Total=a+bPrint“Total=";TotalEndSub2.隐式声明

VisualBasic允许用户在编写应用程序时,不声明变量而直接使用,系统临时为新变量分配存储空间并使用,这就是隐式声明。所有隐式声明的变量都是Variant数据类型。VisualBasic根据程序中赋予变量的值来自动调整变量的类型。例如:变量目前十六页\总数三十八页\编于九点3.强制显式声明——OptionExplicit语句良好的编程习惯都应该是“先声明变量,后使用变量”,这样做可以提高程序的效率,同时也使程序易于调试。VisualBasic中可以强制显式声明,可以在窗体模块、标准模块和类模块的通用声明段中加入语句:

OptionExplicit目前十七页\总数三十八页\编于九点

4.变量的默认值当执行变量的声明语句后,VisualBasic系统就给变量赋值一个默认值,在变量首次赋值之前,一直保持这个默认值。对于不同类型的变量,默认值如表2-3所示。2.4变量表2-3不同类型变量的默认值变量类型数据类型数值型0(或0.0)逻辑型False日期型#1899-12-300:00:00#变长字符串空字符串""定长字符串空格字符串,其长度等于定长字符串的字符个数对象型Nothing变体类型Empty目前十八页\总数三十八页\编于九点记录类型变量TypeTypeDemoNum1asdoubleVar1asString*8EndTypeStaticGenvarasTypeDemoGenvar.Num1;Genvar.Var1目前十九页\总数三十八页\编于九点变量的作用域结构应用程序窗体模块声明部分,通用部分,事件过程标准模块声明部分,通过过程1局部变量在过程(事件和通用)内定义的变量叫做局部变量,作用于它所在过程目前二十页\总数三十八页\编于九点2模块变量窗体变量可用于该窗体内的所有过程。通用区域,显示声明标准模块变量,对其内过程可见,其他模块内过程不可见。3全局变量PublicGlobal每个过程和每个过模块中使用。目前二十一页\总数三十八页\编于九点VB提供了上百种内部函数(库函数),要求掌握这些常用函数的功能及使用。调用方法:

函数名(参数列表)有参函数函数名无参函数说明:

(1)使用库函数要注意参数的个数及其参数的数据类型(2)要注意函数的定义域(自变量或参数的取值范围)例如:sqr(x)要求:x>=0(3)要注意函数的值域。如:exp(23773)的值就超出实数在计算机中的表示范围。常用内部函数目前二十二页\总数三十八页\编于九点1、数学函数常用的数学函数有:Abs(N)Cos(N)Sin(N)Exp(N)Log(N)Sqr(N)Sgn(N)

说明:(1)在三角函数中的自变量是以弧度为单位。如:sin300sin(2.14159/180*30)

常用内部函数目前二十三页\总数三十八页\编于九点(2)Abs(x):返回x的绝对值。(3)Exp(x):返回e的指定次幂,即ex。(4)Log(x):返回x的自然对数。(5)符号函数Sgn(x),根据x值的符号返回一个整数(-1、0或1)。

1x>0Sgn(x)=0x=0-1x<0(6)Sqr(x):返回x的平方根,如Sqr(25)的值为5,Sqr(2)的值为1.4142.。此函数要求x>0,如果x<0则出错。常用内部函数目前二十四页\总数三十八页\编于九点2.转换函数说明:(1)要区别两个取整函数int()和fix()Fix(N)为截断取整,即去掉小数后的数。Int(N)不大于N的最大整数。N>0与int(N)相同,当N<0时,int(N)

与fix(N)-1相等。例如:Fix(9.59)=9,Int(9.59)=9Fix(-9.59)=-9,Int(-9.59)=-10

思考:如何实现四舍五入取整?(2)Asc("Abcd")

值为:65(只取首字母的Ascii值)

(3)Val("abc123")值为:0,Val("1.2sa10")值为1.2注意:Val()函数只将最前面的数字字符转换为数值。常用内部函数目前二十五页\总数三十八页\编于九点3.字符串操作函数

(1)删除空格函数Ltrim(x)返回删除字符串x前导空格符后的字符串。Rtrim(x)返回删除字符串x尾部空格符后的字符串。Trim(x):返回删除前导和尾随空格符后的字符串。(2)取子串函数Left(x,n):返回字符串x前n个字符所组成的字符串。Right(x,n):返回字符串x后n个字符所组成的字符串。Mid(x,m,n):返回字符串x从第m个字符起的n个字符所组成的字符串。常用内部函数目前二十六页\总数三十八页\编于九点3.字符串操作函数(3)Len(x):返回字符串x的长度,如果x不是字符串,则返回x所占存储空间的字节数。(4)Lcase(x)和Ucase(x):分别返回以大写字母、小写字母组成的字符串。(5)Space(n):返回由n个空格字符组成的字符串。(6)Instr(x,y):字符串查找函数,返回字符串y在字符串x中首次出现的位置。如果y不是x的子串,即y没有出现在x中,则返回值为0。

(7)String$(n,ASCII码),String$(n,字符串)返回由N个指定字符组成的字符串。常用内部函数目前二十七页\总数三十八页\编于九点3.字符串操作函数例:

len("Thisisabook!")15Left$("ABCDEFG",3)"ABC"Right("ABCDEFG",3)“EFG"Mid$("ABCDEFG",2,3)"BCD“Ucase("ABcd")"ABCD"Lcase("ABcd")"abcd"Trim("Abcd")"ABcd"String(5,"A")"AAAAA"InStr(2,“ABCDEFGEF”,“EF”)5(第一次出现的位置)常用内部函数目前二十八页\总数三十八页\编于九点4.日期、时间函数

(1)Date:返回系统当前日期。(2)Time:返回系统当前时间。(3)Minute(Now)、Minute(Time):返回系统当前时间“hh:mm:ss”中的mm(分)值。(4)Second(Now)、Second(Time):返回系统当前时间“hh:mm:ss”中的ss(秒)值。

常用内部函数目前二十九页\总数三十八页\编于九点5.随机函数Rnd与Randomize语句(1)随机函数RndRnd函数可以不要参数,其括号也省略。返回[0~1](即包括0,但不包括1)之间的双精度随机数。若要产生1~100的随机整数,则可通过下面的表达式来实现:Int(Rnd*100)+1'包括1和100Int(Rnd*99)+1'包括1,但不包括100产生[N,M]区间的随机数的VisualBasic表达式:

Int(Rnd*(M-N+1))+N常用内部函数目前三十页\总数三十八页\编于九点(2)Randomize语句该语句的作用是初始化VB的随机函数发生器(为其赋初值),可使Rnd产生相同序列的随机数。

Randomize语句使用形式:Randomize[Seed]其中:Seed是随机数生成器的种子值,若省略,系统将计时器返回的值作为新的种子值。例如:下段程序每次运行,将产生不同序列的20个[10,99]之间的随机整数。RandomizeFori=1To20PrintInt(Rnd*90)+10;NextiPrint常用内部函数目前三十一页\总数三十八页\编于九点运算符和表达式.算术运算符与算术表达式

1.算术运算符例:5+2*10mod10\9/3+2^2结果是:11(ia=3)目前三十二页\总数三十八页\编于九点2.算术表达式

(书写中需注意的问题)(1)运算符不能相邻。例a+*b是错误的。(2)乘号不能省略。例x乘以y应写成:x*y

(3)括号必须成对出现,均使用圆括号。(4)表达式从左到右在同一基准并排书写,不能出现上下标(5)要注意各种运算符的优先级别,为保持运算顺序,在写VB表达式时需要适当添加括号(),若用到库函数必须按库函要求书写。如:

运算符和表达式(-b-sqr(b*b-4*a*c))/(2*a)(a+b)/(a-b)目前三十三页\总数三十八页\编于九点.字符串运算符与字符串表达式

字符串运算符有:&、+

。功能是字符串连接例如:

"ABCD"+"EFGHI"'结果为:ABCDEFGHI“VB”&“程序设计教程”'结果为:VB程序设计教程说明:当连接符两旁的操作量都为字符串时,上述两个连接符等价。它们区别是:

+(连接运算):两个操作数均应为字符串类型;

&(连接运算):两个操作数既可为字符型也可为数值型,当是数值型时,系统自动先将其转换为数字字符,然后进行连接操作。运算符和表达式目前三十四页\总数三十八页\编于九点例:"100"+123'结果为

223"100"+"123"'结果为

100123"Abc"+123'出错"100"&123'结果为

100123100&123'结果为

100123"Abc"&"123"'结果为

Abc123"Abc"&123'结果为

Abc123注意:使用运算符“&”时,变量与运算符“&”之间应加一个空格。这是因为符号“&”还是长整型

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论