1、第四章第四章数据、表达式与简单程序设计数据、表达式与简单程序设计本章要点本章要点_VB程序设计的概念程序设计的概念_VB的过程与模块的过程与模块_VB语言基本成分语言基本成分(数据类型数据类型,函数函数,表达式表达式)_程序代码由不同的过程组成。程序代码由不同的过程组成。_事件过程:事件过程: 按层次的概念:事件过程存按层次的概念:事件过程存储于窗体文件储于窗体文件(.frm)中,一般在中,一般在本窗体内有效。本窗体内有效。举例,详细见下举例,详细见下l窗体模块(窗体模块(.frm)l标准模块(标准模块(.bas)l类模块类模块 (.cls)程序的结构程序的结构_定义数据类型定义数据类型_输入
2、(赋值)输入(赋值)_计算处理计算处理_输出输出根据半径计算圆面积根据半径计算圆面积Dim r As Single, s As Singler = Text1s = 3.14159 * r * rText2 = s*r*r数据类型存储大小取值范围Integer整数2 Byte-32768 32767Long长整数4 Byte-2147483648 2147483647Single单精度数4 Byte-3.402823E38 -1.401298E-451.401298E-45 3.402823E38Double双精度数8 Byte-1.79769313486232E308 -4.94065645
3、841247E-24;4.94065645841247E-324 1.79769313486232E308Byte字节型数1 Byte0 255Boolean逻辑型数2 ByteTrue或FalseString字符串型数(变长) 10Byte + 串长度 0 约20亿个字符String字符串型数(定长) 串长度1 约65400个字符Date日期型数8 Byte100年1月1日9999年12月31日Currency货币型数8 Byte-922,337,203,685,447.5808 922,337,203,685,447.5807Object对象型数4 Byte任何对象引用Variant变体型
4、数=16 Byte数值型可达Double型的范围;字符型可达变长字符串型的串长度P44 无论常量变量,如果不加说明,无论常量变量,如果不加说明,系统均按变体型数据处理。系统均按变体型数据处理。关键:关键:程序设计中如何选择合适的数据类型?程序设计中如何选择合适的数据类型?三条规则三条规则(P44)_尽量用整数类型尽量用整数类型_超出整数范围用长整型超出整数范围用长整型_进行带小数点的数据运算时,用单进行带小数点的数据运算时,用单精度或双精度精度或双精度 _1、下列四组数据中,全部是正确的、下列四组数据中,全部是正确的VB常数常数的是的是 :_A、32768 , 1.34D2, “ABCDE”,
5、 &o1767 _B、3276, 123.45, 1.2e-3, #True#_C、&H145, 02-0302003, false, D-3_D、ABCDE, #02002-2003#, E-2_2. P59 5_未加说明类型而使用的变量,系未加说明类型而使用的变量,系统一律按变体型处理;统一律按变体型处理;_不同的变量说明语句,变量作用不同的变量说明语句,变量作用域也不同。域也不同。 等级范围局部在过程中说明,仅在说明它的过程中有效窗体/模块在窗体或模块中说明,在定义该变量的模块或窗体的所有过程内均有效全局(公有)在模块或窗体中说明,在工程内的所有过程中都有效注意:注意:变量两个变量两个要
6、点要点的应用的应用在什么地方定义变量在什么地方定义变量用什么语句定义变量用什么语句定义变量 在用在用DimDim语句说明一个变量语句说明一个变量后,系统自动赋予一个后,系统自动赋予一个初始值初始值。若变量是数值型的,则初始值若变量是数值型的,则初始值为为0;0;字符串型的,则初始值为字符串型的,则初始值为空串空串; ;逻辑型的,则初始值为逻辑型的,则初始值为FalseFalse。说明字符示例意义%x%表示x是整型变量&x&表示x是长整型变量!x!表示x是单精度变量#x#表示x是双精度变量x表示x是货币型变量$x$表示x是字符型变量Private sub Form_Click() k& = 1
7、Country$ = “china” Print k,CountryEnd SubK:长整型:长整型字符串型字符串型_把常量、变量用算术运算符连接起把常量、变量用算术运算符连接起来的式子来的式子书写规则书写规则 (1)乘号不能省略。例)乘号不能省略。例x 乘以乘以y 应写成:应写成:x*y (2)括号必须成对出现,均使用圆括号。)括号必须成对出现,均使用圆括号。例:数学表达式例:数学表达式)()3(4xyzyx写成写成VB表达式:表达式: (3*x+y)-z)/(x*y)4_“abcde” & ”12345” “abcde12345” _12000 & 12345 1200012345_“12
8、000”+12345 24345_“12000”+“12345” “1200012345”相同类型相同类型的数据进行运算,结果为同一类型的数据进行运算,结果为同一类型不同数据类型不同数据类型的数据进行运算,结果的类型的数据进行运算,结果的类型为两个运算对象中为两个运算对象中存储长度较长存储长度较长的那个对象的那个对象的类型的类型算术运算符、关系运算符、逻辑运算算术运算符、关系运算符、逻辑运算. 例: K=2,J=3,A=TRUE 则则K-JJ 值为值为? 注意:注意:_赋值号左边不能是常量、函数、表赋值号左边不能是常量、函数、表达式。下面都是错误的赋值语句:达式。下面都是错误的赋值语句: no
9、w()=x+y 5=x x+y=3X=5y=y+2_注意:三角函数的单位是弧度注意:三角函数的单位是弧度a$=“ABCDEF中国中国GHIJK”Print Len(a$) /13Print Left(a$,4) /ABCDPrint Right(a$,4) /HIJKPrint Mid$(a$,3,4) /CDEFPrint InStr(4,a$,”GHIJ”) /9Print “a”+space(4)+”b” /a bC$=“Visual Basic”Print Ucase(C$) /VISUAL BASICPrint Lcase(C$) /visual basicPrint Str(78.
10、54) /” 78.54”Print Cstr(78.54) /”78.54”Print Val(“354gsda”) /354Print Chr(97) / “a”Print Asc(“a”) /97X=-76.78Print Cint(x) /-77Print Fix(x) /-76Print Int(x) /-77Print Cint(76.5) /76xemdyxxsin51223(12*x+5*y-Sqr(Abs(d3-m2))/Exp(-x)/Sin(x)数据的输入与输出数据的输入与输出_输入输入 文本框:文本框:r=val(text1.text)_输出输出 标签标签:Label1
11、.caption=“你好你好” 文本框:文本框:Text1= str(y) Print方法方法 4.7 4.7.1 函数返回值函数返回值button:这是一个由这是一个由4个数值常量组成个数值常量组成的式子,形式为的式子,形式为:c1+c2+c3+c4c1 的取值内置常量名意义0vbOkOnly只显示“确定”按钮1vbOkCancel显示“确定”和“取消”按钮2vbAbortRetryIgnore显示“终止”,“重试”和“忽略”按钮3vbYesNoCancel显示“是”,“否”和“取消”按钮4vbYesNo显示“是”和“否”按钮5vbRetryCancel显示“重试”和“取消”按钮c2 的取值
12、内置常量名意义16vbCritical显示关键信息图标 32vbQuestion显示警示疑问图标 48vbExclamation显示警告信息图标 64vbInformation显示通知信息图标 按钮名内置常量取值OK(确定)vbOK1Cancel(取消)vbCancel2Abort(终止)vbAbort3Retry(重试)vbRetry4Ignore(忽略)vbIgnore5Yes(是)vbYes6No(否)vbNo7常见错误常见错误1. 1. 使用中文标点符号使用中文标点符号 系统产生系统产生“无效字符无效字符”,以以红色显示红色显示2. 2. 字母和数字形状相似字母和数字形状相似 小写字母
13、小写字母“l”和数字和数字“1”形式相同、小写字母形式相同、小写字母“o”与数字与数字“0”。3. 对象名称对象名称(Name)(Name)属性写错属性写错(424(424错误错误) ) Text1 Text1、Command1Command1、txtInputtxtInput、txtOutputtxtOutput、cmdOkcmdOk4.4.打开工程时找不到对应的文件打开工程时找不到对应的文件 保存文件时保存文件时先保存窗体先保存窗体.frm文件文件、再保存再保存.vbp文件文件,注意路径注意路径。5.语句书写位置错 在通用声明段只能有定义常量和变量的语句,不能有在通用声明段只能有定义常量和变量的语句,不能有赋值等其它语句赋值等其它语句课堂作业课堂作业_正确表示命题正确表示命题“A是一个带小数的正数,且是一个带小数的正数,且B是一个带小数的负数是一个带小数的负数”的逻辑表达式的逻辑表达式是是 。小结小结