




已阅读5页,还剩48页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
主讲:冯 元 Email: ,Visual Basic 程序设计,2,第三章 数据类型、常量与变量,3.1 基本数据类型 3.2 直接常量 3.3 变量 3.4 符号常量,3,3.1 基本数据类型,本节知识点: 数据类型。 数值型、String型、Boolean型、Date型。,4,控制部件,存储部件,输入部件,输出部件,问题:如何使这台机器 自动完成计算任务?,5,3.1 基本数据类型,什么是数据类型? 在计算机内部,所有的信息都以二进制数据的形式表示,如果所有数据都用同一种方式来表示会出现什么问题? 存储和运算。 数据A:10101010 数据B:11110000 00000111 10101010,6,3.1 基本数据类型,内存 由半导体材料制成,速度快,体积小。 用来存储程序和程序运行的结果。 内存由许多存储单元构成,每个存储单元可存储位二进制数据。 每个存储单元都有一个唯一的地址。,7,3.1 基本数据类型,为了快速地对数据进行运算,有效地利用存储空间,VB将不同的数据分为多种数据类型。 每种数据类型的长度一定。(占用的内存存储单元数量一定)。 每种数据类型表示的值有一定的范围。 为了区别这些不同的数据类型,每种数据类型都有一个特定的类型名。 在程序设计中,要随时注意所用数据的类型。,8,3.1 基本数据类型,1、数值型,9,3.1 基本数据类型,这6种数据类型都是用来表示数值的。 在实际编程时,应根据具体用途决定选用那种类型来表示数值。 表示范围越大、精度越高的数据类型占用的存储空间也越大,运算速度越慢。,10,3.1 基本数据类型,2、String型(字符串型) 字符串是指连续的字符序列。 String类型专门用来存放文字信息,字符串类型所占内存空间大小与字符串长度有关。 String类型又分为:变长字符串型和定长字符串型。 变长字符串:指字符长度不固定,随赋值而变。如未经说明,缺省为变长字符串。 定长字符串:始终保持其长度不变。要人为规定,如长度超过规定值将被截去。,11,3.1 基本数据类型,3、Boolean型(逻辑型、布尔型) 逻辑型数据只有两个可能的值:逻辑真True和逻辑假False,用2个字节存储。 4、Date型(日期时间型) 日期型数据可存放日期信息、时间信息或同时存放日期和时间信息。 日期型数据用8个字节来存储。 日期范围从100年1月1日到9999年12月31日,12,3.2 直接常量,本节知识点: 常量。 基本数据类型的常量。,13,3.2 直接常量,常量:是指在程序运行过程中始终保持不变的常数、字符串等。在VB中,有两种形式的常量:直接常量和符号常量。 直接常量:在程序代码中,以显式给出的数据。如在程序中多次出现很大的数字或很长的字符串,为了方便阅读和维护,应该使用符号常量。,14,3.2 直接常量,1、整型常量 整型常量包括:字节型、整型、长整型。 十进制:1、20、500、-101 、230594& 八进制:&O11、&O127 错误:&O81 十六进制:&H11、&HFF 错误:&HFR 例子:分别求&O176340、 &O176340&的十进制值,1111110011100000 1000001100100000 = -800,15,3.2 直接常量,2、浮点型常量 浮点型常量包括:单精度和双精度( !、# )。 3.14159、0.23、24.、-.45、-0.05 浮点型常量的指数表示法:mEn 表示 m10n,其中的m为整数常量或实数常量,n必须是整数常量,m和n均不能省略。 1.2E10、-1.23E-3 错误:1.2E1.4、E4 浮点常量中的E也可以是e、D、d。,16,3.2 直接常量,3、字符串型常量 字符串型常量必须使用英文的双引号将字符文本括起来, “ ” 称为字符串的定界符。 “你好!”、“dhsj 123”、“” 字符串常量可以是任何可输入的字符。 空字符串的作用: 如何将双引号作为字符串的内容?,17,3.2 直接常量,4、逻辑型常量 逻辑型常量只有两个:true、false 注意:“true”、“false” 是字符串常量。 5、日期时间型常量 使用 # 号作为定界符。 #3/1/2009#、#April 1, 2009#、#1:00:00PM#,18,3.3 变量,本节知识点: 变量的概念。 变量命名规则与变量定义。 变量的使用与变量的类型转换。 对象型变量和变体数据类型。,19,3.3 变量,程序运行过程中有许多数据需要暂存,如:控件的属性,计算的中间结果等。 放在哪里呢? 放在计算机内存中,什么是内存?怎么放? 放在内存单元中,一个内存单元包含多少bit?,地址1 地址2,20,3.3 变量,内存单元的地址为二进制,不方便使用和记忆,可使用不同的符号表示这些地址。如: aa表示地址1,bb表示地址2 这些符号就是变量! 谁来完成这些符号和内存地址间的相互转换?由计算机自动完成。,21,3.3 变量,变量的生存期:,为变量开辟内存空间,为变量赋值,读取变量的值,清除内存变量,22,3.3 变量,如何使用变量: 变量的定义: 变量的使用。 变量类型的转换。 变量的释放。,变量的命名 变量的类型 变量的作用范围 变量的初始值,23,3.3 变量,1、变量命名规则 变量命名注意:见名知意,最好不用中文。 VB对变量命名有如下要求: 以字母开始,可以包括字母、数字和下划线。 不能包括标点符号。 不能多于255个字符。 不能与关键字重复。(如:End、Private) 在同一作用域中,变量不能重名。,24,3.3 变量,变量命名举例: 合法变量名: Abc、Name、intAge、x12、My_var1、PI 非法变量名: 12ab、_x、ab.cd、$MyVar、Call、x1、a+b 当在代码窗口中编程时,如果使用不合规则的变量名,系统会显示错误提示。,25,3.3 变量,2、定义变量 定义变量(声明变量)就是为变量分配内存空间。使用变量声明语句来定义变量,语法格式: 声明变量的语句作用是:告知程序该变量的变量名,变量的数据类型,变量的作用范围,最后为变量赋予相应的初值。,Public|Private|Dim|Static 变量名 As 数据类型名,26,3.3 变量,例子: dim inta as integer dim stra as string dim blna as boolean dim datb as date 变量名、变量的数据类型、变量的初始值。 变量的作用范围比较复杂,后面专门讨论。,27,3.3 变量,变量的作用范围(变量的作用域):指变量的有效范围,即声明某个变量后,能够对该变量赋值或读取其值的代码范围。 在VB中,变量有三种作用域:过程级、模块级和全局级。 什么是过程、模块和全局?,28,3.3 变量,过程级变量:也称局部变量,作用域为定义它的过程,在哪个过程中定义,就只能在该过程中使用。 可在过程的任意位置定义过程级变量,语句: Dim|Static 变量名 As 数据类型名,29,3.3 变量,使用Dim关键字定义的过程级变量与所在的过程共存亡。 使用Static关键字定义过程级变量也称“静态变量”,只要所在过程被执行一次,变量的值将一直存在,变量所在过程被再次执行时,变量值不被初始化。(前提:程序没有退出),30,3.3 变量,模块级变量:指定义的变量可以被所在模块的所有过程使用。定义模块级变量的语句必须放在所在模块的通用声明段中(所有过程的前面)。语句: Dim|Private 变量名 As 数据类型名 两个关键字的作用相同。 模块级变量在模块启动时创建,模块退出时清除。,31,3.3 变量,程序级变量:指定义的变量可以被程序中所有模块使用,也称“全局变量”。声明程序级变量的语句必须放在模块开始的通用声明段中。语句: Public 变量名 As 数据类型名 程序级变量在模块启动时创建,程序退出时清除。,32,3.3 变量,变量的作用域取决于:定义变量时使用的关键词和定义变量语句的位置。 程序中某个过程中的语句: 可以存取本过程中定义的过程级变量、所在模块定义的模块级变量、任意模块定义的全局变量。 不能存取其他过程中定义的过程级变量、其他模块中定义的模块级变量。,33,3.3 变量,一条语句定义多个变量: 强制变量定义: 与其他语言不同,VB允许不定义就使用变量,对没有定义而直接使用的变量,VB把它作为变体数据类型(Variant)。 使用强制变量定义功能:Option Explicit,Dim a as integer,b as string,c as boolean,d as date,34,3.3 变量,3、变量的赋值与取值 给变量赋值使用赋值语句: Let 变量名=表达式 “=”为赋值号,不是等号。赋值语句的执行结果是将表达式的值写入变量名代表的内存中,原来的值被覆盖。 如果表达式值的数据类型与变量的数据类型不一致,在赋值时会进行类型转换。,35,3.3 变量,变量的值除非被赋新值,否则不会自动变化。 对于数值类型变量,如果被赋的新值超出其可表示的范围,会出现“溢出”错误。 例子: a=10000: b=20000: c=30000 a=a+b+c 赋值语句的错误写法:a=b=10000,dim a as integer,b as integer,c as integer,36,上机作业二,习题1:作业二增加一个按钮,界面如图所示。使用变量保存窗体位置和大小信息。,37,上机作业二,习题2:窗体上有两个命令按钮,其中一个按钮上有图标,另一个按钮有“移动”字样,要求:每单击一下“移动”按钮,有图标按钮就会向右移动一点。,38,上机作业二,习题3:程序运行后,显示空白窗体,单击窗体则显示一幅背景图片,再单击图片消失,如此循环。 (提示:要用到LoadPicture()函数),39,3.3 变量,4、变量的同名问题 不允许同名的情况 在同一作用域内不能定义重名的变量。 同一过程中不能定义同名过程级变量。 同一模块中不能定义同名的模块级变量。 同一模块中不能定义同名的全局变量。 同一模块中的模块级变量和全局变量不能同名。,40,3.3 变量,允许同名的情况 不同过程中可以定义同名的过程级变量。 不同的模块中可以定义同名的模块级变量。 过程中可以定义与模块级变量同名的过程级变量。 过程中可定义与全局变量同名的过程级变量。 模块中可以定义与其他模块定义的全局变量同名的模块级变量。 不同的模块中可以定义同名的全局变量。,41,3.3 变量,变量同名时的情况 不同作用域的变量同名时,作用域小的变量会屏蔽作用域大的变量。 如果不同模块中全局变量同名,访问其他模块中定义的全局变量时应添加模块名进行限定(形式为“模块名.变量名”) 当全局变量与过程级变量或模块级变量同名时,可在全局变量名前加模块名加以区别。,42,3.3 变量,5、变量的类型转换 类型转换:把数据从一种类型转换为另一种类型。可能出现类型转换的场合: 为变量或对象属性赋值时,赋值号两边的类型不一致。 计算表达式时,表达式中运算数类型与运算符要求不符。 在调用对象的方法或通用过程时,提供的参数与要求的类型不符。,43,3.3 变量,隐式转换:当出现需要进行类型转换的情况,VB会根据规则自动进行转换。对无法完成的转换会报告错误。 数值型间的转换: 整数到浮点:大小一般不变。 浮点到整数:小数部分四舍五入,如果小数部分正好是0.5,则向最近的偶数靠拢。 如:intN1=4.5 : intN2=3.5 注意变量表示范围,防止出现“溢出”错误。,44,3.3 变量,字符串与数值型之间的转换: 如果字符串表示的内容全部是数值信息,则可以将其赋值给数值型变量。 如:strA=“1234”:intA=strA 对无法转换的会出现“类型不匹配”错误。注意空格,45,3.3 变量,逻辑型的转换: 逻辑型数值型:False转换为0;True转换为-1 数值型逻辑型:0转换为False;其他为True 字符串型逻辑型:只有“False”和“True”可转 日期时间型的转换: 日期时间型转换为数值型:日期部分转换为数值的整数部分,时间部分转换为小数部分。 所有的类型值均可以转换为字符串值。,46,3.3 变量,显式转换:使用VB提供的内部函数进行类型转换,实际编程时最好使用显示转换,这样不易出错。 常用转换函数见教材67页表3.2 例子: i3 = CInt(123.5) fl = CDbl(“x1.2”),47,3.3 变量,不能进行转换的情况: 包含非数值字符的字符串向数值型转换。 非“False”或“True”的字符串向逻辑型转换。 非日期内容的字符串向日期型转换。 转换超出目标类型的表示范围。,48,3.3 变量,6、变体数据类型(Variant) 变体类型变量可以存贮几乎所有系统定义类型的数据(除用户自定义类型)。把其它类型的数据赋给变体变量,变体变量的类型会随之变化,适应新值。,Public|Private|Dim|Static 变量名 As Variant,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 春夜喜雨:唐诗鉴赏及创作启发教学教案
- 老旧小区改造工程的策略及实施路径
- 现代企业管理理论与实务试题集汇编
- 我的心爱之物物品介绍作文(5篇)
- 软件测试技术与实践题目解析
- 《数学微积分基本概念与运用教案》
- 国际贸易发展趋势研究表格
- 书中寻宝记读后感演讲稿15篇
- 2025年物理学高考复习综合测试卷及答案
- 2025年生态学与可持续发展专业考试知识试题及答案
- 2025年佛山市南海区图书馆招聘题库带答案分析
- 中华民族共同体概论知到课后答案智慧树章节测试答案2025年春丽水学院
- 2024年浙江省中考社会试卷真题(含标准答案及评分标准)
- 加油站安全隐患排查检查表
- 《饮料总酸度的测定》教学设计
- 固定资产投资统计培训PPT课件
- 河南省天一大联考高一下学期期末数学试题(解析版)
- 广州市登革热疫情应急演练方案
- GB_T 30789.8-2015 色漆和清漆 涂层老化的评价 缺陷的数量和大小以及外观均匀变化程度的标识 第8部分:划线或其他人造缺陷周边剥离和腐蚀等级的评定
- 建设工程项目管理论文范文
- 同步发电机调速系统仿真设计
评论
0/150
提交评论