第4章程序代码基础.ppt

上传人:sccc 文档编号:5638779 上传时间:2023-08-05 格式:PPT 页数:41 大小:338.51KB
返回 下载 相关 举报
第4章程序代码基础.ppt_第1页
第1页 / 共41页
第4章程序代码基础.ppt_第2页
第2页 / 共41页
第4章程序代码基础.ppt_第3页
第3页 / 共41页
第4章程序代码基础.ppt_第4页
第4页 / 共41页
第4章程序代码基础.ppt_第5页
第5页 / 共41页
点击查看更多>>
资源描述

《第4章程序代码基础.ppt》由会员分享,可在线阅读,更多相关《第4章程序代码基础.ppt(41页珍藏版)》请在三一办公上搜索。

1、第四章 程序代码基础,语法基础,数据类型常量变量运算符,数据类型(1),一用于保存数字的几种数字类型Interger16位整型Long32位整型Single32位单精度浮点,小数Double64位双精度浮点,小数Currency货币类型;64位精确定点(整数15位小数4位)Byte8位字节型,例如1:Dim a As Integer a=5 aim_1=-193例如2:,Dim c As IntegerPrivate Sub Form_Click()c=5Print cEnd Sub,数据类型(2),二用于进行逻辑判断的Boolean类型16位,取值只有True和False,默认为false从

2、其它数据类型转换为Boolean时0转成False,其它值为True从Boolean转换为其它数据类型时False转成0,True为-1例如:command1.visible=true,数据类型(3),三用于保存字符串的String类型双引号括起变长String,最多231个字符如:Dim temp As string定长String,最多216,不足字符以空格填充如:Dim temp As string*100 表示声明了100个字符的字符串,数据类型(4),四用于保存日期的Date类型64位,识别多种日期格式,除汉字日期以外如:Dim birthday As Datebirthday=#1

3、2/5/78#birthday=#1990-12-5 12:00:00 AM#birthday=#January 1,1993#取值范围为:100年1月1日9999年12月31日,数据类型(5),五用于保存对象引用的Object类型32位,保存对对象的引用(地址),只能用Set语句赋值六.万能的Variant类型(变体型)Dim temp几种特殊取值:Empty值:在赋值前,Variant型变量具有该值。Null值:空值,用于数据库,表示未知、尚未赋值的数据。不同于0、零长度字符串。Error值:指出运行中的错误状态。,数据类型(6),七自定义数据类型Type 自定义类型名元素名 As 数据类

4、型元素名 As 数据类型元素名 As 数据类型.End Type类似于C语言中的结构类型,如:Type Student ID as long Name as string*10End TypeDim Stu1 As StudentStu1.ID=100102Stu1.Name=“zhang”,数据类型(7),如:Public Enum ColorsWhiteRed Green End EnumDim temp As ColorsTemp=Green,Private|Public Enum 自定义类型名元素名 As 数据类型End Type,八自定义枚举类型,Public|Private Con

5、st 常量名=表达式如:Const conPi=3.1415926,有两类常量:用户自定义常量 系统常量(以VB开头),比如回车换行符vbCrlf、vbRed、vbCancel等等,常量,变量名称如何声明使用变量的作用域,变量,合法变量名以中英文字符开头,可以包含英文字母、中文、数字、下划线;不能是系统已有的关键字,如Date、if、End;不能超过255个字符;在同一作用范围区域中必须唯一,比如同一个事件过程中不能有两个同名的变量。例如:cmd1 txt_6错误:1cmd3%3f,变量的命名,Public|Private|Static Dim 变量名 As 类型 如:*局部变量Dim tem

6、p As Interger(模块声明段中或在过程中;在模块声明段中,与private同,在过程中,只有过程有效)*模块级变量Public temp As Interger 整个工程有效(模块声明段中)Private temp As Interger 当前窗体有效*静态变量Static temp As Interger 退出过程不释放,*隐式声明就是不声明而直接就使用一个变量*显式声明比隐式声明更安全,Option Explicit语句强制要 求变量进行显式声明(或通过菜单的选项对话框设定),变量的声明,我们会强制要求先声明后使用,即显式声明。原因:变量不声明而直接使用,这些未声明的变量都是Va

7、riant类型,当需要指明数据为具体类型形式时需要额外的处理,也缺乏必要的类型检测;在使用已有变量时可能会错误地拼写了该变量,而系统会认为它是隐式声明的另一个变量,而检查不出错误;反之若采用显式声明方式,系统强制所有变量必须先声明,在编译时一旦发现使用了未经声明的变量名(如写错),就会报告错误。在每个文件代码的通用段(首行)增加一条设置语句:Option ExplicitDim MyVar声明变量。MyInt=10未声明变量产生错误。MyVar=10声明变量不产生错误。,严格要求变量声明,变量的简易声明方式,VB还提供了一种简易的声明方式,只要变量名后带有某个特定符号,就代表该变量是某种数据类

8、型,如Dim StudentName$数据类型声明字符:Integer%Long&Single!Double#String$,变量的作用域,全局变量:定义在BAS模块中,使用public关键字,工程中所有文件所有过程共享如在common.bas中:Public stuNo As Long模块级变量:定义在BAS模块、窗体或类模块中,使用Private或Dim关键字,整个模块内共享如在frmMain.frm中:Dim stuNo as Long局部变量:定义在一个过程内部,仅限该过程使用例如:实验1例题,赋值运算符,frmMain.Width=300 给对象属性赋值(数值)frmTest.Cap

9、tion=“Hello”给对象属性赋值(字符串)temp=temp+1 给普通变量赋值flag1=true给普通变量赋值(布尔)orderDate=#2002-12-20#给普通变量赋值(日期)Dim a As FormSet a=New Form1给对象变量赋值VB在进行赋值运算时,会自动进行类型转换,注释语句,以下循环计算总成绩,VB中进行运算,一、算术运算+加法-减法*乘法/浮点数除法 整数除法 指数如 temp=32 MOD 求余数例题:实现乘法、除法及指数运算:val(),二、连接运算&强制两个表达式作字符串连接+如果有数字,则作相加运算,否则作字符串连接有些情况下,用“&”比用“+

10、”可能更安全。例如:设A$=“Mouse”,B$=“Trap”执行语句:C$=A$+B$后C$的值为”MouseTrap”。,VB中进行运算,&和+运算符的比较,Private Sub Command1_Click()Dim s$Dim a As Integers=12345a=67Text1.Text=a+sText2.Text=a&sEnd Sub,VB中进行运算,三、关系运算符 关系运算符也称比较运算符,用来对两个表达式的值进行比较,比较的结果是一个逻辑值,即真(True)或假(False)。=,=,比较运算符的应用结果,Dim s1,s2 as stringPrivate Sub Co

11、mmand1_Click()s1=abcds2=12345Text1.Text=s1 s2End Sub true,VB中进行运算,四、逻辑运算符 用逻辑运算符将关系表达式或逻辑值连接起来的式子就是逻辑表达式,也称布尔表达式。逻辑运算的值是一个逻辑值“真”或“假”。Not 逻辑非;And 逻辑与;Or 逻辑或;Xor 逻辑异或;Eqv 逻辑等于;Imp 逻辑蕴含,逻辑运算符运算结果比较,VB中进行运算,五、运算符优先级算术运算符优先级由高至低是:指数运算()、负数()、乘法和除法(*和/)、整数除法()、求模运算(Mod)、加法和减法(+和)、字符串连接(&)。逻辑运算符优先级由高至低是:No

12、t、And、Or、Xor、Eqv、Imp。,立即窗口,视图菜单:打开立即窗口,直接输入命令,练习题:,使用立即窗口(Debug Window)显示下列表达式的值(设x=5,y=15,z=3)(1)x mod z+x2y+z(2)x2-y*23*z and z3x2(3)(y mod 10)*10+y10,常用内部函数,1、数学函数2、字符串函数3、转换函数4、其他函数,1 数学函数,数学函数主要用来完成数学运算,常用的有以下几个:(1)Sin(x):返回X的正弦值,X的单位为弧度。?sin(30*3.14/180)结果:0.5(2)Cos(x):返回X的余弦值,X的单位为弧度。(3)Tan(x

13、):返回X的正切值,X的单位为弧度。,(4)Atan(x):返回X的反正切值,返回值单位为弧度。(5)Log(x):返回X的自然对数。(6)Exp(x):返回以e为底的X的指数值。(7)Sqrt(x):返回参数X的平方根值。(8)Abs(x):返回X的绝对值。,(9)Hex(x):以字符串形式返回X的十六进制值。(10)Oct(x):以字符串形式返回X的八进制值。(11)Rnd():产生一个介于01之间的单精度随机数。?Rnd()?10*rnd(12)Int(x):去掉小数部分,返回整数。(13)Fix(x):该函数和Int(x)类似,去掉小数部分,返回整数。负数int需进位。正数 int 和

14、 fix 相同,2 字符串函数,(1)InStr(起始位置,字符串1,字符串2,比较类型):根据比较类型模式确定字符串2在字符串1中第一次出现的位置。?Instr(“visual basic”,”basic”)8(2)LTrim(字符串):去掉字符串左边的空白部分。(3)Rtrim(字符串):去掉字符串右边的空白部分。,(5)Trim(字符串):去掉字符串的左右空格,若为Null时,返回Null。(6)Left(字符串,个数):取出字符串左边指定个数的字符,若个数大于或等于字符串长度,全取。?Left(“abcde”,3)(7)Right(字符串,个数):取出字符串右边指定个数的字符,若个数大

15、于或等于字符串长度,全取。(8)Mid(字符串,起始位置,个数):取字符串由起始位置开始的指定个数的字符。?mid(“abcde”,3,2),(9)Len(字符串或字符变量):计算字符长度,若字符串为空时,返回Null。S=“students”?Len(s)(10)Ucase(字符串):将字符串的小写字母转换为大写字母,其他字符不变。(11)Lcase(字符串):将字符串中的大写字母转换为小写字母。,(12)Space(个数):返回指定个数的空字符串。(13)String(个数,字符):返回包含重复字符的字符串,长度由“个数”指定。(14)StrComp(字符串1,字符串2,比较类型):按比较

16、类型比较两个字符串,返回值为:相等时为0;小于时为1;大于时为1。?Strcomp(“abcd”,”ABCD”)1(15)StrReverse(字符串):将给定字符串逆序输出。若为空串,返回空串,若为Null,则会出错。?StrReverse(“abc”)cba,3 转换函数,转换函数一般用来实现不同类型数据之间的转换。Visual Basic 提供的常用转换函数有以下几个。(1)Str(数值表达式):把数值转换为字符串。?str(-893.33)-893.33(2)Val(字符串):把字符串转换为数字数值,忽略字符串中的非数字字符。,4 其他函数,(1)Date:取当前系统日期。(2)Tim

17、e:取当前系统时间。(3)Hour:返回023之间的整数,表示一天之中的某一钟点。(4)Day:返回131之间的整数,表示一个月中的某一日。(5)Month:返回当前的月份。(6)Year:返回当前年份。,练习题:,使用立即窗口(Debug Window)显示下列表达式的值(设x=5,y=15,z=3)(1)Len(x&y&z)(2)Mid(str(x3),2,2)&y+z(3)Ucase(Left(Mid(This is a Book,6),4)(4)Date()+10(5)hour(time(),练习题:,编一程序,求半径R=5cm的球的体积及球的表面积。程序代码写在窗体的单击事件中。,编一个华氏温度与摄氏温度之间的转换程序,转换公式如下:摄氏温度转换为华氏温度,F为华氏度。华氏温度转换为摄氏温度,C为摄氏度。应用程序的界面自己设计。用命令按钮实现转换。即单击转换华氏按钮,则将摄氏温度转换为华氏温度;同样,单击转换摄氏按钮,则将华氏温度转换为摄氏温度。,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/施工/环境 > 农业报告


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号