现代信息技术 微电子技术 计算机技术 传感技术 通信技术 处理、存储信息的技术 传感、采集技术 传递信息的技术 研究如何利用固态内部的微观特性以及一些特殊工艺,在固体的 一个微小体积中制成具有一种或多种功能完整的电路或器件。 计算机技术 处理、存储信息的技术 传感技术 传感、采集技术 通信技术 传递信息的技术
信息的表达与交流 信息的表达方式 信息的表达技术 文字、语言、图形、图像、声音、视频、动画、形体动作…… 报刊书籍、广播电视、多媒体技术、网络技术 ……
压缩 分类:有损压缩与无损压缩 无损压缩:rar,zip 多媒体数据文件从一种格式压缩为另一种格式,通常是有损压缩。 衡量压缩技术的技术指标是: 压缩比要大 算法要简单 压缩、解压的速度要快,尽可能做到实时压缩 失真要小,解压后能尽可能恢复原数据 性质 无压缩格式 有损压缩格式 图片 bmp jpg , gif ,png 音频 wav mp3 , wma 视频 Avi(可以无压缩) Mpg ,mp4 ,wmv , flv , avi(也可以是压缩格式)
Access字段的数据类型 说明 数据类型 自动编号 文本 备注 数字 货币 日期 / 时间 是/否 计算 OLE对象 最多255个字 备注 长文本 数字 用于数学计算的数值数据,输入纯数字,可设置成货币等格式 货币 输入纯数字,可以设置货币格式 日期 / 时间 日期与时间值,可输入的格式:2001/01/1,2001.1.1,2001年1月1日,1月1日, 2001,1,1 01.1.1(当时间处理) 78.1.1(当日期处理) 二〇〇一年五月 不可输入的常见格式:20010101 2001\1\1 2001/02/29(不存在的日子) 是/否 真/假,占1位,导出到Excel中显示为True和False 计算 公式或函数 OLE对象 来自 Office 和基于 Windows 的程序的图像、文档、图形和其他对象。 例如某个字段用于存储照片,则可以设为此类型。 设为主键的字段值不能重复
PS链接图层 链接图层仅将“自由变换”和“变换”功能链接住,因此设置位置,大小,旋转,斜切、翻转等功能被链接在一起。 如果链接在一起的某个图层设置了“全部锁定”(黑锁),则其它链接图层的“自由变换”和“变换”功能也无法进行。
Flash按钮 一个按钮是否有效,需判断“点击”帧是否有画面。 若“点击”帧上有关键帧(黑点),或者有延续内容的普通帧,则有效。 若某个图层“点击”帧是空白关键帧或者是前面空白关键帧的延续,而其它图层“点击”帧未定义,则无效。
Flash按钮 若所有图层的“点击”帧都未定义,则判断“按下”帧,以此往前类推。 有效 无效
算法与VB基础
算术运算符 运算符 功能 优先级 例子 值 ^ 乘方 1 3^2 9 - 负号 2 -2^2 -4 *、/ 乘、除 3 3*4/2 6 \ 整除 4 4\3 MOD 求余数 5 5 mod 3 +、- 加、减 2+3-2
字符串连接符 符号 例子 值 & “34” & ”56” “3456” 34 & “56” + “34” + “ab” “34ab” “34”+ 56 90 34 +”ab” 出错
For语句 For 循环变量名=初值 TO 终值 Step 步长 语句块 Next 循环变量
例2: Dim i as integer, s as integer S=0:n=10 For i=1 to n s=s+i n=n-1 Next Label1.caption=str(s) S=s+i语句共执行了几次? 程序执行完s的值是多少? 程序执行完i的值是多少? 程序执行完n的值是多少? 10次 55 11
For语句中循环变量的初值、终值、步长不会随其值的改变而改变。 也就是循环变量和步长的值一旦赋予,不会再更改。
例3: Dim i as integer, s as integer S=0:n=10 For i=1 to n step -1 s=s+i Next Label1.caption=str(s) S=s+i语句共执行了几次? 程序执行完s的值是多少? 程序执行完i的值是多少? 1
例4: Dim i as integer, s as integer S=0:n=10 For i=1 to n s=s+I i=i+1 Next Label1.caption=str(s) S=s+i语句共执行了几次? 程序执行完s的值是多少? 程序执行完i的值是多少? 5 25 11
Do while语句 Do While 条件表达式 语句块 Loop
例4: Dim x as integer, r as integer, s as string X=val(text1.text) Do while x>0 r=x mod 2 s=r & s x=x\2 loop
求a、b两数的最大公约数 方法一:辗转相除法代码一 If a<b then t=a:a=b:b=t r= a mod b Do while r<>0 a=b b=r r=a mod b Loop label1.caption=“最大公约数是” +str (b) 辗转相除法代码二 r=a mod b Do while r<>0 a=b b=r r= a mod b Loop label1.caption=“最大公约数是” +str (b) 方法三:辗转相减法代码 Do While a <> b If a>b then a=a-b else b=b-a Loop Print a ‘ print b也一样 辗转相除法代码三 Do while b<>0 r=a mod b a=b b=r Loop label1.caption=“最大公约数是” +str (a)
判断数a是否为素数 方法一: 方法二: n = Val(Text1.Text) n = Val(Text1.Text) f = True ‘ f=0 For i = 2 To n-1 If n Mod i = 0 Then f = False ‘ f=1 Exit For End If Next I If f = True Then ‘ if f= 0 then Label1.Caption = Str(n) + "是素数" Else Label1.Caption = Str(n) + "不是素数" 方法二: n = Val(Text1.Text) f = True For i = 2 To int(sqr(n)) If n Mod i = 0 Then f = False Exit For End If Next I If f = True Then Label1.Caption = Str(n) + "是素数" Else Label1.Caption = Str(n) + "不是素数"
题型改编 [100,1000]以内的素数 [1,100]以内的素数对 [100,1000]的回文素数 ……
VB函数 VB提供的标准函数 Str()、Val()、Int()、Sqr()、Abs()…… 调用方式:y=str(x) 自定义函数 Function 函数名( 参数表) As 数据类型 语句块 End Function
自定义函数例一 '自定义求绝对值函数 Function jdz(x As Single) As Single If x < 0 Then jdz = -x Else jdz = x End If End Function Jdz:函数名 X:形参。形参类型可以不申明,若不申明就是通用型。若申明,实参的类型一定要与它一致。 自定义函数里通常存在将结果赋值给函数名的语句。 Private Sub Command1_Click() Dim a As Double a = Val(Text1.Text) Label3.Caption = Str(a) + “绝对值是” + _______ ‘ 调用jdz函数, a为实参 End Sub Str( jdz(a) )
自定义函数例二 ‘自定义判断一个数是否为偶数的函数 Function oushu(x As Integer) As Boolean If x mod 2= 0 Then oushu = True Else oushu = False End If End Function Private Sub Command1_Click() Dim a As Integer a = Val(Text1.Text) If oushu(a) then Label3.Caption = “是偶数” Else Label3.Caption = “不是偶数” End if End Sub
自定义函数例三 '自定义函数求两数中的较大数 Function jd(x As Single, y As Single) As Single ‘多个形参 If x < y Then jd = y Else jd = x End If End Function Private Sub Command2_Click() Dim a As Single, b As Single, c As Single a = Val(Text1.Text) b = Val(Text2.Text) c = Val(Text3.Text) Label4.Caption = “最大的数是" + ____________ End Sub Str(jd(jd(a,b),c))
过程 每个过程是为了完成一定的任务,由一组独立的代码组成。过程无返回值。 过程分类 事件处理过程 通用过程
事件处理过程 事件过程是当对象的某个事件发生时,对该事件做出相应的程序代码段,它是应用程序的主体。 例1:Sub Command1_click() …… End Sub 例2:Sub Form_Load() End Sub 例3:Sub Text1_KeyPress(KeyAscii As Integer)
通用过程 当多个不同的事件处理过程需要执行一段相同的代码,为了避免代码的重复,就可以把这段代码独立出来,作为一个通用过程。 通用过程是多个事件过程的相同之处,公共部分。 通用过程的定义: Sub 通用过程名(形参) ‘参数可有可无,也可多个根据具体情况 …… End Sub Sub swap(a as single, b as single) t = a: a = b: b = t End Sub Sub swap(a, b) t = a: a = b: b = t End Sub
过程定义与调用 过程调用方法: 过程名 参数1, 参数2,参数3…… 或者 Call 过程名 (参数1, 参数2, 参数3) 例: 过程名 参数1, 参数2,参数3…… 或者 Call 过程名 (参数1, 参数2, 参数3) 例: Sub swap(a As Single, b As Single) ‘形参类型若有申明,实参类型需与形参类型一致 t = a: a = b: b = t End Sub Private Sub Command1_Click() Dim a As Single, b As Single a = Val(Text1.Text) b = Val(Text2.Text) Call swap(a, b) ‘过程调用 或者写成 swap a,b Label3.Caption = “交换后a的值是:” + Str(a) + “,b的值是:" + Str(b)
自定义函数当过程用 Function swap(a As Single, b As Single) t = a: a = b: b = t End Function Private Sub Command1_Click() Dim x As Single, y As Single x = Val(Text1.Text) y = Val(Text2.Text) Call swap(x, y) ‘过程调用 或者写成 swap x,y Label3.Caption = “交换后x的值是:” + Str(x) + “,y的值是:" + Str(y) End Sub