




已阅读5页,还剩62页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
程序设计基础,第二章,本章内容,2.1 数据类型 2.2 常量和变量 2.3 表达式 2.4 常用内部函数 2.5 程序代码编写规则,数据类型,1、数值型(Numeric) 整数类型: 字节型(Byte) 占1个字节 (0255) 整型(Integer) 占2个字节 (-3276832767) 长整型(Long) 占4个字节 (-21亿21亿),计算机中无符号数的表示 00000000=0 11111111=255,八 位,计算机中符号数的表示方法有3种:原码、补码和反码,1原码 一个二进制数同时包含符号和数值两部分,用最高位表示符号,其余位表示数值,这种表示带符号数的方法为原码表示法。,计算机中符号数的表示,符号位 : “0”表示正 、 “1”表示负,符号数的机器数表示,例如: +3原码 = 0 0000011 -3原码 = 1 0000011,符号位,3补码 补码是表示带符号数的最直接方法。对于正数,其补码与原码相同;对于负数,则其补码为反码加1。,2反码 反码是另一种表示有符号数的方法。对于正数,其反码与原码相同;对于负数,在求反码的时候,除了符号位外,其余各位按位取反,即“1”都换成“0”,“0”都换成“1”。,(3)补码,假定一个数在机器中占用8位。 (1) 原码,数据类型,实数类型(定点数,浮点数) 浮点型 单精度型(Single) 占4个字节 双精度型(Double) 占8个字节 单精度型(Single): 有效位7位 取值范围(-3.4028231038 3.4028231038 ) 双精度型(Double) : 有效位15位 (-1.7976931348623210308 1.7976931348623210308 ),数据类型,实数类型(定点数) 有效位19位 货币型(Currency) 占8个字节 货币型:小数点左边有15位数字,右边有4位数字:取值范围 (-922337203685477.5808 922337203685477.5807),2、字符型(String):用双引号括起来的一串字符。 例:Dim NameA as String 可变长度字符串 Dim Nameb as String*20 固定长度字符串 NameA=“abcdef” 变长字符串,长度不固定,最多可包含20亿个字符; 定长字符串,长度固定,最多可包含65535个字符. 3、逻辑型(Boolean):用于表示逻辑判断结果,其值为真( True)或假(False) 0 False, 非0 True False 0, True -1,4、日期型(Date):是由双井号(# #)括起来用于表示时间的数据。 例: #mm/dd/yyyy # #08/20/2010 # #08/20/2010 6:55:10 AM #,5、对象型(Object):可以引用应用程序或其它应用程序中的对象,在声明了(Object)型变量后,要用SET语句去引用该对象。 例: Dim a as object set a=Command1 a.Caption=“OK” 等价于Command1 .Caption=“OK”,6、变体型(Variant):可存放不同类型的数据,在程序运行时VB可完成自动转换。 例: Dim X X=“17” X=X-5 X=“A” & X Print x,结果为: A12,例 2 - 1,编写程序,验证逻辑型数据的取值。,例 2 - 2,编写程序,在窗体上创建命令按钮Command1,单击命令按钮,可将该按钮的显示文字“Command1”改为“欢迎”,且字体为黑体,字号为 14号。,常量、变量,常量,定义:在程序运行过程中其值始终保持不变的量称为常量。 种类:,直接常量 符号常量,用户自定义符号常量 系统定义符号常量,直接常量,类型:字符串常量、数值常量 布尔常量、日期常量 举例: “欢迎使用Visual Basic 6.0“ 字符串常量 23456 整型常量 23456& 长整型常量 12.06 、1.206E+1 单精度常量 12.06# 、1.206D+1 双精度常量 True 逻辑型常量 #06/11/2006# 日期型常量,直接常量,整数型: 十进制整型和长整型数:09和+、-号,32768是 Long 八进制整型和长整型数:07,加前缀&、&o、&O, &o327&是八进制长整型数 &o7+ &o1= &o10,直接常量,十六进制整型和长整型数: 09及AF,加前缀&H、&h, &h3AF&是十六进制长整型数。 在VB中通常使用十六进制长整型数来表示颜色: Text1.ForeColor = &HFF0000&,符号常量,形式: Const 常量名 AS 类型 = 表达式 说明: 省略 AS 类型 ,常量的类型由表达式值的类型决定。 为了便于与变量名区分,一般常量名使用大写字母。 举例: Const Pi = 3.14159265358979 Const Max As Integer = 100 Const Birth = #1/1/06# Const MyString = “China“,例 2 - 3,在窗体的通用段声明符号常量pi,在命令按钮command1和command2的单击事件过程中引用pi。,系统定义符号常量,系统常量是VB系统预先定义好的,用户可直接引用。系统常量位于对象库中,可通过“对象浏览器”查看。,例 2 - 4,编程使用系统符号常量。,变 量,定义:一个有名字的内存单元就叫变量。在程序运行期间变量的值是可以改变的。 种类:属性变量和内存变量。 说明:变量有名字和数据类型,通过名字引用一个变量,而通过数据类型来确定该变量的存储方式。,变量的命名规则, 以字母或汉字开头,后可跟汉字、字母、数字或下划线组成,长度小于等于255个字符; 不要使用VB中的关键字; string、integer等 VB中不区分变量名的大小写; 变量名不能与过程名或符号常量同名; 变量名在同一个范围内必须是唯一的。,变量的声明,(1)用声明语句声明变量 格式:Dim | Static 变量名 AS 类型/类型符 ,变量名 AS 类型/类型符 例如: Dim fac As Long Dim fac& Dim addr As String Dim addr$ Dim no As String * 8 Dim score Dim average As Single Dim average!,(2) 用类型说明符表示变量 将类型说明符放在变量名的尾部,可以表示不同的变量。 例如: Dim fac As Long Dim fac& Dim addr As String Dim addr$ Dim average As Single Dim average! dblNum% 表示整型变量 curWage 表示货币型变量,Dim a As Integer, b as integer 可写成:Dim a%, b%,(3)隐式声明 未进行显示声明而通过赋值语句直接使用,或省略了AS 类型/类型符短语的变量,其类型为变体(Variant)类型。 (4) 强制声明 在Visual BASIC程序的开始处,若出现(系统环境可设置),或写入下面语句: Option Explicit(显示,明确),各种类型变量的初始值,数值型变量初始值为0。 逻辑型变量初始值为False(逻辑假)。 可变字符串型变量初始值为零长度的字符串 (“);固定长度字符串变量初始值为其长度数量的空格。 可变类型(Variant)变量初始值为Empty。,运算符及表达式,在高级语言中,用运算符将操作数(操作数可以是:常量、变量、函数、对象等)连接起来,可以组成各种类型的表达式,从而实现程序编制中所需要的各种操作。,算术运算符与算术表达式,设:ia=3,例:5+10 mod 10 9 / 3 +2 2,结果:10,例:2+3.2*4 mod 17.52 4.32 / 2,2+12.8 mod 17.52 2.16,2+12.8 mod 9,2+4,字符串运算符与字符串表达式,&123 表示八进制数 123& 表示长整型数,例如: “abcdef“ & 12345 结果为 “abcdef12345 “ 123 & 456 结果为 “123456“ “123“ + “456“ 结果为 “123456“ “123“ + 456 结果为 579 “abcdef ” + 12345 出错 注意:True转换为数值-1,False转换为数值0 “123 “ + True 结果为 122,日期运算符及日期表达式,日期型数据一般进行加“+”和减“-”两种运算。也可以对日期型数据进行比较等运算。 例如:#1998-07-23# +5 结果为:1998-7-28 #2006-08-17# -30 结果为:2006-7-18 #09/23/2006# - #09/18/2006# 结果为:5 #09/23/2006# #09/18/2006# 结果为:True,表达式的书写规则, 每个符号占1格,所有符号都必须一个一个并排写在同一基准上,不能出现上标和下标。 不能按常规习惯省略乘号*,如:2x要写成2*x ,也不能写成2x。,a*b*c*d/e/f/g 或 a*b *c*d/(e*f*g),表达式的书写规则, 只能使用小括号(),且必须配对,表达式中不能出现方括号和花括号。 如数学式: 应写成:(a+b)/(c+(d+c)/(d-c) 不能出现非法的字符,如。,内部函数是由VB系统提供 函数调用的一般格式为: 函数名(参数1,参数2,) 函数调用的作用:利用函数返回值。 例如: y=Sqr(x) Sqr是内部函数名,x为参数,运行时该语句调用内部函数Sqr来求x的平方根,其计算结果由系统返回给变量y。,常用内部函数,VB的常用内部函数大体上分为四大类: 数学函数 字符串函数 日期/时间函数 类型转换函数,常用内部函数,数学函数,单位是弧度,数学函数,随机函数,格式:Rnd (x) 功能:产生大于或等于0且小于1的随机数。 说明: 当 x0或者缺省时: 以上一个随机数作种子,产生序列中的下一个随机数; (3) 当x=0时: 产生与最近生成的随机数相同的数 。,例2 -5,在立即窗口中用print语句(可以用?代替print)观察Rnd函数的结果。,随机函数,(4) 要生成a,b闭区间的随机整数,可以使用以下公式: Int( (b-a+1)*Rnd+a ),例2- 6,在立即窗口中产生0,100、20,50之间的随机数。,注意:产生30 - 50的随机整数 (包括30,不包括50) int(Rnd*(50-30)+30) int(Rnd*(49-30+1)+30),Randomize语句,格式:Randomize n 其中 n是一个整型数,作为随机数生成器的“种子” 功能:初始化随机数生成器的“种子”值,产生不相同的随机数序列,Private Sub Form_Click() Dim a As Integer, b As Integer, c As Integer Randomize 初始化随机数生成器 a = Int(90 * Rnd + 10) 产生10,99 内的随机整数 b = Int(90 * Rnd + 10) c = a + b Print “产生的两个随机数: “; a, b Print “和数: “; c End Sub 运行程序后单击窗体,输出结果是: 产生的两个随机数:56 71 和数:127,例2.3 通过随机函数产生2个两位正整数,求这2个数 之和并显示出来,编写的窗体单击事件过程代码如下: Private Sub Form_Click() Dim a As Single, b As Single, c As Single a = 6 b = 9 c = Sqr(a * a + b * b) Print “c = “; c End Sub 运行程序后单击窗体,输出结果是: c=10.81665,例2.2 已知a=6,b=9,计算c =,用于进行字符串处理 说明:(1) 函数Mid(字符串,p,n) 从第P个开始取n个字符 示例:Mid(“ABCDEG”,3,2) 的结果为 ”CD” 若省略n,则得到的是从P开始的往后所有字符,如 Mid(“ABCDE”,2) 的结果为 “BCDE”,字符串函数,(2) 函数Instr(f,串1,串2,k) 查找串2在串1中的位置 f 和 k 均为可选参数,f表示开始搜索的位置(默认值为1),k表示比较方式,若k为0(默认),表示区分大小写;若k为1,则不分大小写。 例如 Instr(3, ”A12a34A56”, ”A”) 的结果为7 Instr(3, ”A12a34A56”, ”A”, 1) 的结果为4 Instr(”A12a34A56”, ”A”) 的结果为1,字符串函数,字符函数(1),字符函数(1),字符函数(2),字符函数(2),例2.4 先从字符串a中找出某个指定字符(本例为空格),再以此字符为界拆分成两个字符串,编写的窗体单击过程代码如下: Private Sub Form_Click() Dim a As String, b As String, c As String, n As Integer a = “VisualBasic“ 表示空格 n = InStr(a, “) 查找空格位置 b = Left(a, n - 1) 取左边部分 c = Mid(a, n + 1) 取右边部分 Right(a,Len(a)-n ) Print b 显示左边部分 Print c 显示右边部分 End Sub 程序运行后单击窗体,输出结果是: Visual Basic,日期/时间函数用于进行日期和时间处理 例如: 函数Date返回系统日期,如返回日期为 #03/23/2011# 函数Time返回系统时间,如返回时间为 #10:53:28#,日期与时间函数,日期与时间函数,转换函数用于数据类型的转换 说明:Val函数将数字字符串转换为数值型数字时,会自动将字符
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 特长生手工制作兴趣班教学计划
- 意识流叙事应用-洞察及研究
- 2025年新冠疫情笔试题目及答案
- 2025年消防安全知识竞赛试题库及参考答案
- 初二年级英语线上线下教学效率提升计划范文
- 全套药品批发企业培训试题及答案
- 校园文化视角学生发展核心素养范文指导
- 2025年高中学业水平合格性考试语文卷试题(含答案详解)
- 2025年七年级班主任主题教育活动计划
- 绿色制造成本与价格-洞察及研究
- 热控专业培训课件
- 人教版九年级化学下册全册教案
- CRH380B型动车组制动系统
- 植入式静脉给药装置(输液港)-中华护理学会团体标准2023
- SH石油化工金属管道布置设计规范
- 外国文学史第二版马工程课件 第四章 17世纪文学
- 皮肤的结构与生理功能
- 院感培训试题及
- 开发区财政管理改革研究
- 三维数字城市建模及数据获取课件
- 电气照明系统课件
评论
0/150
提交评论