第二章程序设计基础_第1页
第二章程序设计基础_第2页
第二章程序设计基础_第3页
第二章程序设计基础_第4页
第二章程序设计基础_第5页
已阅读5页,还剩40页未读 继续免费阅读

下载本文档

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

文档简介

第二章程序设计基础2.1、如何学习VisualBasic2.2、数据类型、常量与变量2.3、Print语句、赋值语句2.4、运算符、表达式、常用内部函数2023/1/10

2首先注意一下编码规则:VB代码中不区分字母的大小写。(自动转化)在同一行上可以书写多条语句,但语句间要用冒号“:”分割。若在一行上不能写下一个语句,或在特别需要时,语句可以写在多行上。换行时需要在本行后加入续行符“_”,即空格加下划线。一行最多允许有255个字符。注释以Rem开头,也可以使用撇号“’”引导内容,用撇号引导的注释内容可以直接出现在语句的后面。注意关键字,如If和For等2.1、如何学习VisualBasic2023/1/10

3Integer、Long、Single、Double、Currency、Byte2.2、数据类型、常量与变量---数据类型:Integer:2字节,-32768~32767Long:4字节,-2147483648~2147483647Single:4字节,-3.402823E38~-1.401298E-45 1.401298E-45~3.402823E38 (6位有效位数)Double:8字节,-1.79769313486232E308~ -4.94065645841247E-324 4.94065645841247E-324~ 1.79769313486232E308 (15位有效位数)2023/1/10

4Integer和Long用于表示整数。整数的运算速度快、占用内存少,但精确度不够。Single和Double用于表示实数。如果所要处理的均为整数,那就尽量使用Integer类型;如果所要处理的包括小数,那么尽量使用Single类型。2023/1/10

5用于计算货币的数量,最多保留小数点右边4位和小数点左边15位。Currency:8字节,-922337203685477.5808~922337203685477.5807数值型数据:Byte:1字节,用于表示0~255范围内的整数,无符号。2023/1/10

6String:一个字符占1字节用于存放字符型数据,即用双引号对括起来的字符串,如:“123”、”振兴中华”、”THANKS”等。字符串型数据(String):每个汉字字符占2个字节注意引号是英文输入状态!2023/1/10

7Boolean、Date、Object、Variant逻辑型数据(Boolean):2字节,用于逻辑判断,占两个字节,只有True与False两种值。其他数据类型:2023/1/10

8日期型数据(Date):8字节,日期文字前后必须添加数字符号“#”,#1Jan,97##January1,1999##1999-8-112:30:12PM#都是合法的日期。其他数据类型:#05/08/2002#-#05/01/2002#其结果为数值:7#05/08/2002#-7其结果为日期型数据:#05/01/2002#2023/1/10

9变体型数据(Variant):字节按需分配,是所有未声明的变量的默认数据类型,它对数据的处理完全取决于程序上下文的需要。Variant型变量可以存储数值型、字符型、日期型、对象型等数据,而不必进行数据类型转换,VB会自动完成任何必要的转换。其他数据类型:对象型数据(Object):4字节,可用于引用应用程序中或某些其他应用程序中的对象。2023/1/10

103.2VB的数据类型数据既是程序处理的基本对象,也是程序的必要组成部分。数据类型是指数据的内在表现形式。VB根据数据的不同性质和用途将其分为不同的数据类型。各种数据类型具有不同的存储长度、取值范围和允许的操作。数据类型总的来说分成四大类:数值型、字符串型、其它类型、自定义类型2023/1/10

11常量可以理解为具有固定值的数据分为直接常量和符号常量两种直接常量包括数值常量、字符串常量、逻辑常量、日期常量。例如:78、78&、1.23,3.14159E-2、“计算机”、TRUE、FALSE、#07/01/2008#等都是直接常量。八进制常量前加&O,如:&O1、&O567十六进制常量前加&H,如:&HAF、&H2342023/1/10

12符号常量是为了让程序更具可读性而出现的,包括:(1)系统定义的符号常量例如:vbRed、vbGreen、vbBlue(2)用户自定义的符号常量定义形式为:Const常量名[As类型]=表达式ConstPI=3.1415‘声明常量PI代表3.1415,单精度型ConstXAsInteger=5‘声明常量X代表5,整型ConstR#=3.0‘声明常量R代表3.0,双精度型ConstAREA=PI*R*R‘声明常量AREA代表PI*R*R2023/1/10

13变量在计算机中我们使用变量来存储那些会发生变化的数据,即变量是数据的载体。声明一个变量,就会在内存中开辟一块区域来存储其数据。变量的命名规则变量的声明显式声明隐式声明2023/1/10

14变量的命名规则:以字母或汉字开头,由字母、汉字、数字、下划线组成,长度小于等于255个字符。不能和关键字相同,如Dim、For、Select等,且不能包含“.~‘|”四种英文符号以及空格。在一定范围内必须是唯一的,且不能和过程名同名。不区分大小写字母,如:XYZ、Xyz、xyz都是相同的变量名。例:最大值、lngX_Y、count是正确命名的变量名。3a、Byte、k2是一些错误的变量名。2023/1/10

15变量的显式声明:显示声明的格式:<限定词><变量名>[as<类型>]<限定词>:Dim、Static、Public、Private<变量名>:符合命名规则的变量名称<类型>:Integer、Long、Single、Double、Currency、String、Byte、Boolean、Date、Object、Variant、自定义类型先在代码窗口的通用声明段写入语句“OptionExplicit”2023/1/10

16例:OptionExplicitDimxasIntegerPrivatestrTempasStringPrivatedblTotalasDoubleStaticcWage(类型缺省情况下为Variant型)DimxasInteger,strTempasString,dblTotalasDouble(一条语句声明多个变量是允许的)变量的显式声明:2023/1/10

17声明变量时可以用类型符替代:DimxasInteger<==>Dimx%虽然使用类型符方便,但使用类型关键字能使程序更具可读性。变量的显式声明:StaticyasSingle<==>Staticy!PrivatestrTempasString<==>PrivatestrTemp$PrivatedblTotalasDouble<==>PrivatedblTotal#DimxasInteger,strTempasString,_dblTotalasDouble<==>Dimx%,strTemp$,dblTotal#2023/1/10

18变量的显式声明:OptionExplicitPrivateSubCommand1_Click()DimtempasIntegerDimresultIntegertemp=100result=temp*8PrintresultEndSub例:2023/1/10

19显式声明OptionExplicitPrivateSubCommand1_Click()DimtempasIntegerDimresultasIntegertemp=100result=temp*8PrintresultEndSubPrivateSubCommand1_Click()temp=100result=temp*8PrintresultEndSub隐式声明(书上38页表达有误)隐式声明应尽量避免!变量的隐式声明:2023/1/10

20声明String类型变量时的特殊操作:变长字符串:如PrivatestrTempasString定长字符串:如PrivatestrTempasString*5即使不足5个字符,也会用空格填满,若是超出5个字符,则会自动截去超出部分。21Print语句[<对象名称>.]Print[<输出项>[[{,|;}][<输出项>]]…]功能:在窗体上(对象是窗体)打印内容,内容的默认位置在窗体的左上角。PrivateSubForm_Click()Print"温州医学院"EndSubPrivateSubForm_Click()Print"温州医学院"Print"欢迎你!"EndSubPrivateSubForm_Click()Print"温州医学院"PrintPrint"欢迎你!"EndSub2.3Print语句、赋值语句22注意:无“;”或“,”表示输出后换行PrivateSubForm_Click()Print"温州医学院";Print"欢迎你!"EndSub(紧凑格式)PrivateSubForm_Click()Print"温州医学院";"欢迎你!"EndSubPrivateSubForm_Click()Print"温州医学院",Print"欢迎你!"EndSub(宽松格式)PrivateSubForm_Click()Print"温州医学院","欢迎你!"EndSub注意:符号必须是英文输入状态!23如何精确地控制打印内容的格式?用Spc(n)、Tab(n)两个内部函数可以满足要求Spc(n):输出n个空格Tab(n):在第n列开始输出PrivateSubForm_Click()Print"9"Print"good";Spc(3);"afternoon"PrintTab(8);"good";Tab(16);"afternoon"EndSub24特别说明:刚才所演示的都是打印字符串,当打印的是数值时,会有明显的不同。PrivateSubForm_Click()Print"9"Print"1000"Print1000PrintTrim(1000)Print-1000EndSub如果打印的是数值类型,则会自动在前后加上空格,称为前导空格和后置空格,可以用Trim函数删除空格。25赋值语句:是程序中最常用的语句,其功能是先计算出赋值号右边表达式的值(必要时转换为相同类型数据),再将值赋给赋值号左边的变量。赋值语句的形式为:变量名=表达式或对象名.属性名=表达式注意赋值语句的阅读顺序:从右至左 x%=100*8 Text1.Text=“eto”&“中国”说明:(1)表达式一定要放在赋值号“=”右边。(2)为数值变量赋值,表达式的值不得超过数值变量的表示范围,当左右两边均为数值类型,则强制转换右边的类型,与左边保持一致。(书上仅说明一种特殊情况)(3)任何类型表达式都可以向字符串变量赋值。(4)赋值号“=”与等号“=”是有本质区别的。a%=7.7x!=6.28315248#C$=123.452023/1/10

26A5A=5588A=8相应的VB语句:A为变量名27赋值语句的常见形式:变量自增 x=5 x=x+1(2)变量交换 假设a=5,b=8,如何实现变量值的交换, 即交换后a=8,b=5。

2023/1/10

282.4运算符和表达式运算符是表示某种运算的符号。表达式是由变量、常量和运算符等组成的有意义的式子。运算符按照优先级从高到低排列依次为:算术运算符字符串运算符关系运算符逻辑运算符2023/1/10

29算术运算符与算术表达式30-True‘结果是31,逻辑量True转为数值-1,False转为0False+10+”4”‘结果是1417/5等于3.420Mod5等于0,1Mod3等于1例:5+10mod10\9/3+2^2结果:10假设:A=5、X=22023/1/10

30\整除运算和Mod求余运算的一些特殊规则:\整除和Mod求余均要求运算符左右两边的操作数都是整数;(2)若操作数是实数,则先“四舍五入”转换成整数,再计算;(3)若操作数是实数,且实数的小数部分只有一位“5”时,则遵循:奇进偶舍。奇进偶舍,指的是实数的整数部分是奇,则把“5”进上去;是偶,则把“5”舍掉。例:20.5\7=21.5\1.49=20.5\1.49=00.5001\1.49=115.5Mod5.49=1(超过5才能入!)(操作数的小数部分只等于0.5)2023/1/10

31(4)Mod求余运算时,结果的正负号始终与第一个操作数,即左操作数的符号相同。例:20.5Mod7=620.5Mod-7=6-20.5Mod-7=-6-20.5Mod7=-6\整除运算和Mod求余运算的一些特殊规则:不能出现x2,乘号*不能省略使用圆括号,均成对出现注意!!!2023/1/10

32字符串运算符与表达式&运算符无论操作对象是数值还是字符,都能进行连接, 结果均为字符串类型。使用的时候前后都必须有空格!例:“123”&“456”‘结果为“123456”“abc”&123‘结果为“abc123”“VisualBasic”&“6.0”‘结果为”VisualBasic6.0”为什么?2023/1/10

33(2)+运算符当操作对象均为字符时,与&实现相同的连接功能;一边为数字的字符串,一边为数值,则自动把数字的字符串转化为数值,再进行相加运算,结果为数值;一边为非数字的字符串,一边为数值,则出错;当两边均为数值时,则进行相加。例:“123”+“456”‘结果为“123456”“123”+456‘结果为579“abc”+123‘出错123+456‘结果为579字符串运算符与表达式2023/1/10

34关系运算符与表达式运算符包括>,<,>=,<=,=,<>运算结果只有两种,即True或False;如果两边都是数值,则按其大小比较;如果一边是数值,另一边是数字的字符串,则先转化为数值,再比较;如果一边是数值,另一边是非数字的字符串,则出错;如果两边都是字符型数据,则按ASCII码值从左至右一一比较。2023/1/10

35例:"ABCDE">"ABRA"结果为False不等号2023/1/10

36常用内部函数数学的函数:f(x1,x2,…,xn)=y自变量因变量高级编程语言的函数:参数返回值如:Len(“abc”)=32023/1/10

37VB提供了大量的内部函数(或称标准函数)供用户在编程时调用。内部函数按其功能可分为数学函数、转换函数、字符串函数、日期函数、颜色函数、检测函数等。在以下的表格中,我们用N表示数值表达式,用C表示字符串表达式,用D表示日期表达式。函数名后的“$”符号表示函数的返回值为字符串。2023/1/10

38内部函数——数学函数2023/1/10

39需要特别注意的数学函数Rnd产生[0,1)范围的Single类型的随机数。(2)Int(N)返回小于等于N的最大整数。(3)Fix(N)返回N的整数部分。产生[上界,下界]之间随机整数的方法:Int((上界-下界+1)*Rnd+下界),如:Int((100–0+1)*Rnd+0)PrivateSubForm_Click()

温馨提示

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

评论

0/150

提交评论