VB语言及程序开发环境VisualBasic是什么VisualBasic(简称VB)是Microsoft公司开发的一种通用的基于对象的程序设计语言。•“Visual”指的是开发图形用户界面(GUI)的方法。•“Basic”指的是BASIC(BeginnersAll-PurposeSymbolicInstructionCode)语言,一种在计算技术发展历史上应用得最为广泛的语言。•专业人员可以用VisualBasic实现其它任何Windows编程语言的功能,而初学者只要掌握几个关键词就可以建立实用的应用程序。探究-“求圆的面积”的程序PrivateSubCommand1_Click()ConstpiAsSingle=3.14DimrAsSingle,sAsSingler=InputBox(“r=”,”输入半径”)s=pi*r^2Print“圆的面积s=”;sEndSub思考:(1)程序有多少行,每一行的作用是什么?(2)如果按语句的作用区分,这个程序包含几个部分?(3)程序中用到了哪些数据类型,分别是什么?‘过程结束‘定义名为command1_click()的事件过程‘说明程序中pi是常量∏‘定义半径r和面积s为单精度实型‘输入r的值‘把表达式pi*r*r的值赋给s‘把s的值输出到当前的窗体上数据类型说明部分数据的输入部分数据的处理部分数据的输出部分上机练习一编写VB程序求解“圆的面积”问题。PrivateSubCommand1_Click()ConstPIAsSingle=3.14DimrAsSingle,sAsSingler=InputBox(r=,输入半径)s=PI*r*rPrint圆的面积s=;sEndSub常量变量函数表达式VB程序一般包括四个基本知识探究-“求圆的面积”的程序一、VB中的常用数据类型•人类在社会中所扮演的角色,按其工作性质区分有哪些?•我们要知道在VB中数据是如何参与活动完成任务的,首先要了解数据在VB中都有哪些角色。•阅读教材第20页和第21页和教师出示的表格,说出数据在VB中有哪些角色以及它们的属性情况。导入•人类在地球的世界里,不同的时间不同的地点会以一种或多种角色出现。计算机则用大量的数据把五彩缤纷的世界模拟得玲珑剔透,数据在计算机的世界里也有着不同的角色。•数据在计算机世界中究竟扮演了什么样的角色?它在计算机世界里是如何进行活动,解决问题的呢?一、VB中的常用数据类型数据类型关键字取值范围存储空间整型(%)Integer-32768~327672个字节长整型(&)Long-2147483648~21474836474个字节单精度型(!)Single负数:-3.402823E38~1.401298E-45正数:1.401298E-45~3.402823E384个字节双精度型(#)Double负数:-1.797693134E308~-4.940656458-324正数:4.940656458E-324~1.797693134E3088个字节字符串型($)String定长字符串:0~65535个字符不定长字符串:0~20亿个字符231-1个字符布尔型BooleanTrue或False2个字节日期型Date100/1/1~9999/12/318个字节一、VB中的常用数据类型•常用的数据类型有字符串型、数值常量、布尔常量、日期常量常用的数据类型数值型字符型布尔型日期型整型长整型浮点型货币型字节型单精度浮点型双精度浮点型思考•一个整型数据是否可以定义为长整型?•如果可以,为什么通常我们不会这样做呢?(提示:可以从存储空间这一点上思考。)课堂练习•(1)比较VB中的“数据”和数学课中的“数据”之间的差异。•(2)分析一下,求半径为r的圆的面积的程序。VB中的数据可以理解为范围更广一些,不仅有数值型,还有字符型、布尔型、日期型等,一般情况下同类型数据之间才可以进行运算处理;数学课中的数据可以认为等同于数值型数据。二、常量与变量•大部分成年人都有固定的职业,但也有一部分人频繁更换自己的职业,即使职业不变,职位也会发生变化。随着职业或职位的变化,人在社会中的角色也就随之发生了变化。•数据亦是如此,有常量与变量之分。常量可以类比为职业、职位不会改变的数据,变量可以类比为职业、职位会随时改变的数据。常量和变量•常量在程序运行中保持不变的常数、字符串,如3.14、r=、输入半径等•常量定义方法:Const常量名[As类型]=表达式例:ConstPIAsSingle=3.14‘声明了常量PI,代表3.14,单精度型ConstMAXAsInteger=144‘声明了常量MAX,数值为144,整型•变量是指存储器中有着特定名称的存储单位,•其特点就是存放在其中的数据值可任意改变。变量的作用其实类似于日常生活中使用的各种储值卡,如电话IC卡、银行卡等,在程序中调用变量名时就是引用变量中存储的值。常量和变量常量和变量•变量的定义方法Dim变量名As类型如:DimXAsintegerDimkAsInteger,yASSingle说明:1、如果没有As类型,则默认为变体类型2、一条语句可以同时定义多个变量,但每个变量必须有自己的类型声明,类型声明不能共用变量的命名规则1)必须以字母或汉字开头,由字母、汉字、数字或下划线组成,长度≤255个字符2)不能使用VB中的关键字,并尽量不与VB中标准函数名同名;如:Dim、Sin3)VB中不区分变量的大小写,一般变量首字母用大写,其余用小写;常量全部用大写字母表示运算符、函数和表达式运算符号+-*/^\MOD含义加号减号乘号除号乘方整除取余数算术运算符DimMyValueMyValue=10/4‘返回2.5MyValue=10/3‘返回3.333333MyValue=10\4‘返回2MyValue=10.67\3‘返回3MyValue=2^3‘返回8MyValue=10Mod3‘返回1MyValue=12Mod4.3‘返回0MyValue=12.6Mod5‘返回3MyValue=(-10)Mod3‘返回-1MyValue=10Mod(-3)‘返回1\与Mod参与运算的两数中有一个是浮点数,该数会先被四舍五入成整型后再进行运算。求余结果的正负号始终与第一个运算量的符号相同。字符运算符运算符作用区别示例结果&将两个字符串拼接起来连接符两旁的操作数不管是字符型还是数值型,系统先将操作数转换成字符,然后再连接。123&55abc“&1212355abc12+连接符两旁的操作数若均为数值型则进行算术加法运算;若一个为数字字符型,一个数值型,则自动将数字字符转换为数值,然后进行算术加;若一个为非数字字符型,一个数值型,则出错。123+55abc+12178出错算术运算符的优先顺序指数运算(^)负数(-)乘法和除法(*、/)整数除法(\)求余的模运算(Mod)加法和减法(+、-)常见函数(见附录二)函数名说明示例结果Sin(X)正弦Sin(0)0Cos(X)余弦Cos(0)1Abs(X)绝对值Abs(-3.5)3.5Sqr(X)平方根Sqr(9)3Int(X)不大于给定数X的最大整数Int(-1.6)-2Fix(X)取整Fix(-1.6)-1Cint(X)小数部分四舍五入Cint(1.6)2Date()返回当前系统日期Date()或Date07-03-15Time()返回系统时间Time()或Time10:36:08表达式•表达式是指某个求值规则,它由运算符和配对的圆括号将变量、常量、函数等操作数以合理的形式连接起来的式子。如:PI*r*r表达式书写举例【例1】将数学式改写成VB的算术表达式ba2VB的算术表达式为:3.14159/(a^2+Sqr(b))VB表达式:a*b*c*d/e/f/g或a*b*c*d/(e*f*g)efgabcd【例2】可视化程序的开发环境控件工具栏菜单栏工具栏代码窗口窗体设计窗口工程窗口属性窗口布局窗口小结•VB程序的组成•数据类型说明部分•数据的输入部分•数据的处理部分•数据的输出部分•基本数据类型:整型、长整型、单精度型、双精度型、逻辑型、字符型•常量——在程序运行中保持不变的常数、字符串•常量定义方法:•Const常量名As类型=表达式•变量是指存储器中有着特定名称的存储单位,存放在其中的数据值可任意改变•变量的定义方法:•Dim变量名As类型•运算符、函数和表达式•可视化程序的开发环境整型数(Integer)•整型数表示不带小数点和指数符号的数,其内部存储空间和范围为:存储空间(Byte):2范围:-32768——32767,小数部分四舍五入•整型数的运算速度较快,而且比其他数据类型占据的内存要少。在For…Next循环内作为记数器变量使用时,整型数尤为有用。•十进制整型数只能包括数字0..9、正负号(正号可以省略),如:10,2566,-38,0。长整型数(Long)•长整型数的数字组成与整数相同,正号可以省略,并且在数值中不能出现逗号(分节符)。•存储空间(Byte):4•范围:-2147483648——2147483647,小数部分四舍五入•如:32768,-2567898,10单精度型(Single)•单精度型可以表示最多7位有效数字的数。小数点可以位于这些数字的任何位置,正号可以省略。单精度数可以用定点形式和浮点形式来表示。•定点形式是指在该范围内含有小数的数。例如:-3.4、120.0、+1.234、.00069、-31.24•浮点形式是用科学记数法,即以10的整数次幂表示的数,以E表示底数10,例如:-3.4×105表示为-3.4E5120.0×10-5表示为-120.0E-5双精度型(Double)•双精度型可以表示最多15位有效数字的数。小数点可以位于这些数字的任何位置,正号可以省略。双精度数可以用定点形式和浮点形式来表示。字符型(String)•字符型数据是指一切可以打印的字符和字符串,它是用双引号括起来的一串字符。1、变长字符串•可变长字符串是指字符串的长度是不固定的,随着对字符串变量赋予新的字符串,它的长度可增可减。•按照默认规定,一个字符串如果没有定义成固定长的,都属于可变长字符串,如:“VisualBasic”,“可视化编程”•2、定长字符串•固定长字符串是指它在程序执行过程中,始终保持其长度不变的字符串。•例如,下列语句声明一个长度为20个字符的字符串变量:•DimEmpAddressAsString*20•EmpAddress=“Beijing,China”•如果赋予字符串的字符少于20个,则用空格将EmpAddress的不足部分填满,如果超过20个,则截去超出部分的字符。布尔型数据(Boolean)•布尔型数据只有两个值:真(True)和假(False),经常被用来表示逻辑判断的结果。•任何只有两种状态的数据,如True或False,Yes或No,On或Off,都可以表示为布尔型。•当把数值型数据转换为Boolean型时,0转换为False,其他非0值转换为True.•当把Boolean值转换为数值型时,False转为0,True转为-1。日期型数据(Date)•日期型数据表示日期和时间,可以表示多种格式的日期和时间。•Date型数据用两个“#”把日期和时间的值括起来。•例如:•#11/18/1999#、#1999-11-18##11/18/199910:28:56pm#如果输入的日期或时间是非法的或不存在的,系统将提示出错。