1 / 41

第 四 章 数据类型、运算符和表达式

第 四 章 数据类型、运算符和表达式. 数据类型 常量和变量 变量的作用域 常用内部函数 运算符与表达式 枚举类型. 数据类型. 基本数据类型( P 51 表 4-1 ) 1 、字符串( string ) ASC Ⅱ 码字符表示(注意 1 个汉字占两个字节) 2 、数值型 整数: 整型 integer ( 2 )、长整型 long ( 4 ) 浮点数(实型数): 单精度 single ( 4 )、双精度 double ( 8 ) 3 、货币型 currency ( 8 ). 数据类型. 4 、变体 型( Variant )

Download Presentation

第 四 章 数据类型、运算符和表达式

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 第四章 数据类型、运算符和表达式 • 数据类型 • 常量和变量 • 变量的作用域 • 常用内部函数 • 运算符与表达式 • 枚举类型

  2. 数据类型 基本数据类型(P51表4-1) 1、字符串(string ) ASCⅡ码字符表示(注意1个汉字占两个字节) 2、数值型 整数:整型 integer(2)、长整型 long(4) 浮点数(实型数): 单精度single(4)、双精度 double(8) 3、货币型 currency(8)

  3. 数据类型 4、变体 型(Variant) 5、其他类型 字节 byte(1) 布尔型 boolean(2) 日期型 date(8) 对象型 object (4) Decimal型 (12)

  4. 数据类型 6、用户定义的数据类型(记录类型, 一般用于标准模块) Type 数据类型名 (窗体模块中定义,须加上 private) 数据类型元素名 AS 类型名 …. End type 举例如下 Type Employee Name as string*6 Age as integer Sex as string*2 Nationality as string*4 End type

  5. 常量和变量 常量 在程序执行期间值保持不变的量叫常量 1、文字常量 字符常量,如“Visual Basic “,”23” 数值常量, 有整型数、长整型数、浮点数、货币数 ①整型数,有十进制数、十六进数、八进制数 十进制数 如12,-13 (范围-32768~32768) 十六进制数,如&h76,&h34f(前面冠以&h) 范围(&h0~&hffff)

  6. 常量和变量 八进制数,如&o347 (前面冠以&o或&) 范围 &o0~&o177777 ②长整型数 十进制数,如34556 范围-2147483648~2147483647 十六进制数,如&h567&(以&h开头,&结尾) 八进制数,如&o347&(以&o开头,&结尾) ③货币型数 8字节数值型

  7. 常量和变量 ④浮点数 由尾数、指数符号、指数部分三部分组成,如 235.988E-7(单精度)相当于0.000000235988 2.345d+39(双精度) 还可以用类型说明符来表示 % 整型数 &长整型数 ! 单精度浮点数 # 双精度浮点数 @ 货币型数 $ 字符串

  8. 常量和变量 • 符号常量 定义:const 常量名=表达式 注意:1、定义时,常量名后要加上类型说明符,如 const xx%=100 const pai!=3.1415926 2、使用时直接写常量名,不写类型说明符,如: s=pai*5*5 3、程序中变量名不能与常量名同名

  9. 常量和变量 • 变量 1、命名规则 只能由字母、数字和下划线组成 名字的第一个字符必须是英文字母 名字的有效字符为255个 不能用VB的保留字作为变量名,但可以嵌入其中 举例: sub; m1; q(w); a4 b5; a4b5_1 4ab; sin; ssub; *r1

  10. 常量和变量 2、变量定义 ①用类型说明符标示 ②declear 变量名 as 变量类型 Declear 可以是: Dim (用于标准模块、窗体模块或过程) Static (用于过程)静态变量 Public (用于标准模块)全局变量 Private(用于私有过程)局部变量 ③用 def type 字母范围 如 defdbl l-p

  11. 数据类型 记录类型变量 定义同前,但使用要用“变量 .元素”格式引用,如 可以在程序中使用自定义类型 Employee的变量wang Dim wang as Employee Wang.Name=“王大力” Wang.Age=20 Wang.Sex=“男” Wang.Nationality=“汉”

  12. 变体类型变量 1、变体变量的定义 显示定义或默然定义,如 Dim x as variant Dim x 2、变体变量的赋值 根据赋值不同,自动更改数据类型 X=8;x=“abcd”;x=3.14;x=#04/3/2014# 3、变体变量的内部表示 可用vartype() 函数测定,如: vartype(x)

  13. 变量的作用域

  14. 变量的作用域 P58表4.3 变量的作用域

  15. 变量的作用域 模块级的变量声明的方法是: 在代码窗口的“对象”框中选“通用”,“过程”框中选“声明” 局部变量可以采用默然声明的办法 ①不用dim定义直接使用 ②用类型说明符(% ,&,!,#,$,@)来表示 默然声明有时会造成歧义 全局变量、模块级变量必须显式声明 通过“选项”可以强制用户对变量进行显式声明

  16. 常用内部函数 部分转换函数

  17. 常用内部函数 部分数学函数

  18. 常用内部函数 部分字符串函数

  19. 常用内部函数 部分其他函数

  20. 运算符与表达式 算术运算符及级别 ①指数(^) ②取负(-) ③乘、浮点除(*,/) ④整除(\) ⑤取模(mod)⑥加、减(+,-) ⑦字符连接(&) 注意:按级别计算,括号优先 指数运算用来计算乘方和方根,如8^(1/3) 浮点除同标准除法 整除的结果被截断为整数,不进行舍入处理,如操作数 有小数,先舍入为整数后再操作。 算术运算符“+”也可以字符串连接,最好用&

  21. 运算符与表达式 关系运算符 =, <>,<,>,<=,>=,like,is 运算结果为布尔类型的值,真或假,VB中用-1,0表示 注意:1)小心浮点数的关系运算。如 1.0/3.0*3.0=1.0 结果为? Abs(1.0/3.0*3.0-1.0)<1e-5 结果为? 2)数学上的a<=x<b 应该写成下面的形式 a<=x and x<b 3)同一程序在.exe文件中和VB集成环境中运行结果有可能因为精度问题而结果不同。

  22. 运算符与表达式 4)字符串数据按其ascⅡ码值比较,先比较第1个字符,如相同,再比较第2个,余此类推。 逻辑运算符 1)not (非) (口诀:取反)如 Not (3>8) 结果为 –1 2)and (与) (口诀:全真才是真),如 (3>8) and (5<6) 结果为 0 3)or(或) (口诀:有真即是真),如 (3>8) or (5<6) 结果为 -1

  23. 运算符与表达式 4)xor(异或) (口诀:全真全假才是假),如 (3<8)x or (5<6) 结果为 0 5)eqr(等价) (口诀:全假全真才是真),如 (3<8)x or (5<6) 结果为 -1 6)imp(蕴含) (口诀:一真二假才是假),如 (3<8)x or (5<6) 结果为 0 逻辑运算的运算顺序: Not ;and;or; xor; eqr; imp 数值进行逻辑运算时,要化成(16位或32位)二进制进行,如 63 and 16 结果为 16

  24. 运算符与表达式 表达式的运算顺序 先“算术”,后“比较”,再“逻辑” 注意:1)括号改变执行顺序; 2)字符串连接运算符&在算术运算之后; 指数和负号相邻时,负号优先; 3)乘号不能省略,ab 应写成 a*b 4)运算符不能相连,应用括号分开 5)表达式中只能用圆括号 6)指数运算中注意用括号,如(3*a)^(c/d)

  25. 枚举类型 当一个变量只有几种可能的值时,可以定义为枚举 类型,如星期,月份,职称。 定义格式如下: [Public| private] Enum 类型名称 成员名[=常数表达式] ……. End Enum 常数表达式可以省略,默认情况下,枚举中的第1个常数被初始化为0,其后的常数比前一个常数的值大1,但也可以用赋值语句显式地初始化常数。

  26. 枚举类型 一个枚举变量workdays 的例子 Public enum workdays Saturday ‘休息日 Sunday=0 ‘休息日 Monday Tuesday Wednesday Thursday Friday Invalid =-1 End enum

  27. 第四章窗体与输入输出 • 语句 • 窗体 • 数据输出 • INPUTBOX函数 • MSGBOX函数和MSGBOX语句 • 字形 • 打印机输出 • 源程序代码打印

  28. 语句 多句一行 用冒号(:)隔开 多行一句 用下划线(_)作为续行符 1、赋值语句 目标操作符=源操作符 先计算右边的源操作符值,然后把结果赋值给左边的目标操作符 Text1.Text=str$(total) X1=val(Text1.Text) 目标操作符和源操作符的数据类型必须一致 2、注释语句 ’注释内容 一般放在语句的右边 或 REM 注释内容 一般单独作为一句 注释语句不能放在续行符的后面

  29. 语句 3、暂停语句 格式 STOP 暂停程序的执行,类似于运行菜单中的“中断”命令 注意:在解释系统中,该语句保持文件打开,不退出VB环境。在可执行文件(.exe)中,该语句将关闭所有文件 4、结束语句 格式:END 结束一个程序的执行程序中没有END语句或者没有执行到END语句,程序不能正常结束,需要执行”运行“菜单中的”结束“命令

  30. 窗体 • 窗体的结构与属性 窗体----FORM 系统菜单----ControlBox 标题栏------Caption 最大化-----MaxButton 最小化-----MinButton 窗体属性的设置 有的只能通过属性窗口设置-------“只读属性” 有的只能通过程序代码设置 窗体的部分属性: 1、autoredraw(自动重画) 2、backcolor(窗体背景)

  31. 窗体 3、borderstyle(边框类型) 只读属性 4、caption(标题) 5、controlbox(控制框) 6、enabled(允许) 窗体是否可以被激活 7、字体属性设置 8、forcolor(前景颜色) 9、height,width(高、宽) 10、icon(图标) 设置窗体最小化时(windowstate=1)显示的图标,一般用图标文件(.ico格式) 用程序代码设置时,用loadpicture()函数

  32. 窗体 11、maxbutton,minbutton(最大化、最小化按钮) 这两个属性只在运行期间起作用 12、name(名称) 只读属性 13、picture(图形) 在对象中显示一个图形,注意它与icon属性的区别 14、top,left(顶边,左边位置) 15、visible(可见性) 这个属性只在运行期间起作用 16、windowstate(窗口状态) 设置值 0,1,2 设置标准状态,程序运行时,窗体实际大小取决于width,height

  33. 窗体 • 窗体事件 1、单击事件(click) 2、双击事件(dblclick) 3、装入事件(load) 用于初始化,窗体装入后自动触发该事件。 4、卸载事件(unload) 从内存中清除窗体或关闭窗体时触发该事件 5、活动事件、非活动事件(activate,deactivate) 窗体变为活动或非活动窗口时,分别执行上述事件 6、绘画事件(paint) 窗体被移动或放大时,或者窗体移动时覆盖了一个窗体时,触发该事件

  34. 数据输出 • Print方法 格式: [对象名称。]print [表达式][,|;] 数值表达式,打印出表达式的值;字符串则照原样输出 多个表达式要用分隔符隔开 采用逗号,按分区输出格式显示(14个字符位置); 采用分号或空格,按紧凑输出格式显示 输出数值数据时,数值的前面有一符号位,后面有一空格 该方法具有计算和输出双项功能 在同一行显示时 加逗号,下一个分区段显示; 加分号,紧接着显示

  35. 数据输出 • 与print 方法有关的函数 1、TAB函数 格式:TAB(N) 在PRINT语句中使用,将光标移动到指定列号N位置打印 2、SPC函数 格式:SPC(N) 在PRINT语句中使用,将光标跳过N个空格后打印 3、空格函数 格式:SPACE$(N) 在当前位置输出N个空格 注意三者的区别

  36. 数据输出 4、格式输出函数 格式:format$(数值表达式,格式字符串)功能:按“格式字符串”指定的格式输出“数值表达式”的值 格式字符串是由格式说明符组成,见下表

  37. 数据输出 • 其他方法和属性 1、CLS方法 格式:[对象。]cls Cls清除由print方法显示的文本或在图片框中显示的图形 2、move方法 格式:[对象.]move 左边距离[,上边距离[,宽度[,高度]]] 应用该方法时要特别注意对象,以谁为基准 3、textheight和textwidth方法 返回文本字符串的高度和宽度 CurrentX CurrentY 返回和设置下一次输出位置的水平或垂直坐标 Scalewidth scaleheight窗体宽度和高度 Screen.width screen.height屏幕的宽度和高度

  38. Inputbox函数 该函数用于产生一个对话框,作为输入数据的界面,等待用户输入数据,并返回所输入的内容。 格式: inputbox$(prompt[,title][,default][,xpos,ypos][,helpfile,context]) Prompt 输入提示 Title 对话框标题 Default 预输入的默认值 Xpos,ypos 对话框的左角坐标,要么全部给出,要么全部省掉Helpfile 帮助文件的名字,要么全部给出,要么全部省掉Context 帮助目录号,要么全部给出,要么全部省掉 举例

  39. Msgbox函数和Msgbox语句 1、Msgbox函数 格式:msgbox(msg[,type,][,titls][,helpfile,context]) (1)Msg 对话框中的显示字符(最大1024个),自动换行 (2)Type 由四类数值(表4-4)相加产生,确定对话框中显示的按钮类型、图标种类和活动按钮的位置 0~5为第1类;16,32,48,64第2类;0,256,512,768第3类 (3)Title 对话框的标题 • Helpfile,context 帮助文件的名字及帮助目录

  40. Msgbox函数和Msgbox语句 2、Msgbox语句 格式:msgbox 字符串 举例 Msgbox”文件已保存“ 注意:出现这种信息框后,必须作出选择,否则不能进行其他操 作,这种窗口叫做“模态窗口”

  41. 字体和打印 1、字体 (1)字体类型和大小设置 (2)字体其他属性 2、打印机输出 (1)直接输出 (2)窗体输出 printform 3、源程序代码打印 (1)直接打印 (2)间接打印

More Related