《数据表示与处理》PPT课件.ppt_第1页
《数据表示与处理》PPT课件.ppt_第2页
《数据表示与处理》PPT课件.ppt_第3页
《数据表示与处理》PPT课件.ppt_第4页
《数据表示与处理》PPT课件.ppt_第5页
已阅读5页,还剩51页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

程序设计,数据表示与处理,程序设计中,往往要处理各种各样的数据,不同的程序设计语言有不同的数据类型(Data Type) 在VB中,为了便于数据的表示与处理,VB提供了数值型、字符串型、布尔型、日期型等基本数据类型,整型、长整型、单精度和双精度都属于数值型,它们表示数值的范围是不同的。,字符串型数据是指用括起来的一串字符。如欢迎进入VB世界!、 Visual Basic、1234都是字符串类型。,布尔型又称逻辑型,常用于表示逻辑判断的结果,日期型数据专门用来处理日期和时间。VB采用一对“#”把日期和时间的值括起来,如 #2003/08/20# 表示2003年8月20日。,常量 常量(constant)是指在程序运行过程中保持不变的量,在 Visual Basic中,常量有数值常量、字符串常量等。 数值常量 数值常量就是数学中说的常数,数值常量有整型常量和实型常量两种。 整型常量即整数,是指不带小数的数值,如1、0、-10、107等都是合法的整数。 实型常量即实数,是指带小数的数值。实型常量又分为定点数和浮点数两种。 定点数:3.14159 ,-6.8,1.997。浮点数:2e6、1e5、88E-18。 浮点数对应的就是数学上的科学计数法,以幂数形式表示一个实数,例如1234.56可以表示为1.2345610。由于程序中无法表示上标和下标,因此用英文字母“E”(或“e”)表示底数10,则1.2345610 可表示为1.23456E3。, 字符串常量 被一对双引号括起来的若干个合法的字符称为字符串常量。字符串常量指的是双引号中的字符,不包括双引号本身。例如“china”、“Visual Basic”、“18”、“3.14”等。 text1.text=“text1” print “good morning!” 如果程序中多次用到同一个常量,往往用一个有意义的符号表示,这种常量称为符号常量;代表常量的符号称为“常量名”,其定义形式如下: Const 常量名 As 类型表达式 如:Const pi =3.14159 r=5 s=pi*r*r Print “s=“;s,变量 在程序执行过程中,其值可以改变的量称为变量(variable),例如: a=4 a=3.14 a先后有2个值,也就是说a的值是可以变化的。 每个变量都应该有一个名字,即变量名。Visual Basic变量名必须以字母或汉字开头,由字母、汉字、数字或下划线组成,对字母不区分大小写,变量名最长不超过255个字符。但不能以VB的保留字作为变量名,如a、i、x1、age、num等均为合法的变量名,而1x、print、l*et则是非法的变量名。另外,为加强程序的可读性,变量名最好要有意义,如用“age”表示“年龄”,“sum”表示“总和”等。,变量是用来存储数据的,数据分为不同的类型,相应的变量也有不同类型: 变量在使用之前应用Dim语句声明其变量名及数据类型,Dim语句格式为: Dim 变量名 As 数据类型 例如:Dim i As Integer Dim sum As Single Dim name As String 以上三个语句分别将i、sum、name定义为整型、实型和字符串型变量。当然,也可以在一行中定义多个变量,如上述三个变量可如下定义: Dim i As Integer, sum As Single, name As String,在所有事件过程前定义的变量,可在该窗体的所有事件过程中使用,称为窗体级变量。也可以在事件过程中定义变量,此处的变量称为局部变量,只能在事件过程中使用。,运算符与表达式 1、算术运算符与算术表达式 VB中有很多算术运算符(Operator),如“+”、“”、“*”、“/”等,用它们可以构造出各种各样的算术表达式。算术运算符要求参与运算的量是数值型,算术表达式运算的结果也是数值型. Const A=2,思考: 下列表达式的结果 -3+15 mod 62+23,字符串运算符与字符串表达式 VB中字符串运算符有:+ 和 &。它们的作用都是将两个字符串连接起来。 “计算机”&“软件” 结果是“计算机软件” “123”+“45” 结果是“12345” 需要注意的是:当一个数字字符串表达式(如“123”)与一个数值型表达式用“+”运算时,结果将是数值型数据。如“123”+ 45 结果是168;而用“&”运算结果仍是字符串类型。”123”&45结果是“12345“,日期运算符与日期表达式 日期表达式是用日期运算符“+”或“-”将算术表达式、日期型常量、日期型变量、日期函数等连接起来的式子, 如表达式“#2003/09/01#+30”的运算结果为#2003/10/01#;表达式“#2003/10/20#-#2003/10/10#”的运算结果为整数10。,关系运算符与关系表达式 关系运算符有:=、 、 = 和 2的结果为True。关系运算符优先级相同,几种数据类型的关系比较 1、数值型直接比较其数值大小 2、字符串类型比较: 例: “abc”“AB” 3、日期型 #2004/03/21#2007/03/21#,逻辑运算符与逻辑表达式 常用的逻辑运算符有:Not(取反)、And(与)、Or(或)等,运算结果为布尔值True或False。 逻辑运算符的优先级为:NotAndOr。 如程序代码中的语句: If (N Mod 3 = 2) And (N Mod 5 = 3) And (N Mod 7 = 2) Then print N 其中就包含了逻辑表达式。,运算符的执行顺序 当一个表达式中同时出现多种运算符时,如何决定运算的次序呢?在VB中,运算次序由运算符的优先级决定,优先级高的运算符先运算,优先级相同的从左向右进行运算。不同性质的运算符优先级如下: 算术运算符字符串连接运算符关系运算符逻辑运算符,常用语句与函数,赋值语句 把常量、变量或表达式的值赋给一个变量 VB中赋值语句用“=”来实现 变量=常量、变量或表达式 对象.属性值=常量、变量或表达式 例: dim a as integer,b as integer a=2 b=a b=b+1 Text1.text=“hello”,Print语句(输出) 语法格式:对象名.Print 输出内容 输出内容可以是常量,变量或表达式的值 (如果不指定对象名,默认在当前窗体上输出) 例如:picture1.print “hello” print “hello”,窗体、图片框等,输出内容可以是一个或多个,各内容之间用“;”或“,”隔开。 比较用“;”或“,”隔开输出的区别 例如: A=3 B=2 C=a+b Print “c=”;c Print “c=”,c,用;隔开,各个内容紧跟着 用,隔开,按分区格式输出,注释语句 为了提高程序的可读性,通常需要在程序适当的位置加上必要的注释。(添加注释是编程的一个好习惯。) VB中注释语句的格式为: 1、在字符后加注释内容 A=2 把2赋给变量a 2、用“Rem 注释内容”。 Rem 计算圆的周长 c = 2*PI*r 注意:如果用Rem语句注释,应将Rem语句单独书写,不可像 一样直接放在其他语句后面,否则VB将提示错误,,结束语句 语法格式:End 功能:强制程序结束运行。,通常一条命令语句占一行。要在一行写多条语句,需要在每条语句之间用冒号进行分隔。如果一条语句一行写不下,可用续行符(空格后面跟“_”)将语句分成多行。各关键字之间,关键字与变量名、常量名之间要用空格。,练习:,1.VB 的数据类型分为 ( ) A数值型、字符型、布尔型、日期型 B数值型、字符型、对象型、日期型 C基本类型、扩展类型 D整 型、实型、字符型、日期型、布尔型 2. 下列变量名中,合法的变量名是 ( ) A. C24 B. A B C. A:B D.1+2 3.VB 中运算符被分为四类,分别是 ( ) A算术运算符、字符串运算符、关系运算符、逻辑运算符 B算术运算符、比较运算符、关系运算符、逻辑运算符 C算术运算符、连接运算符、布尔运算符、逻辑运算符 D连接运算符、比较运算符、逻辑运算符、关系运算符,4. 表达式 (2*3)=5 And 12/3 =3 Or x=3 And x 10,6.A 为 True, B 为 False, 则 “A and B” 和 “A Or B” 的值分别是 () 和() A.True, True B.True, False C.False, True D.False, False 7. 在 VB 中表达式 113+11 Mod3的运算结果值是 ( ) A.3 B .4 C .5 D.6 8. 语句段 a=3: b=5 t=a: a=b: b=t 执行后,( ) A.a 值为3, b 值为3 B.a 值为3, b 值为5 C.a 值为5, b 值为5 D.a 值为5, b 值为3,9. 假设 a=2,b=3,c=4,d=5, 表达式 ab And2*ac Or c=d 的值是 ( ) A.True B.False C1 D.1 10. 执行下面的程序段后, b 的值为_ a=300 b=20 a=a+b b=a b a=a b,函数,内部函数是由VB系统提供的,每个内部函数完成某个特定功能。 例:time() 返回系统当前时间 在程序中使用函数称为调用函数,函数调用后,一般都有返回一个确定的函数值。 Begintime=time() Print time(),与用户交互函数 InputBox(提示,标题,默认值,x坐标,y坐标) 返回输入对话框中输入的数据 X=inputbox(提示,标题,默认值,x坐标,y坐标) MsgBox()函数是VB程序设计中常用的交互函数,其功能非常强大,可以显示多种样式的消息对话框。 基本语法格式:MsgBox(提示信息,按钮,标题),实践,1. 通过键盘接收体重值; 2. 计算标准体重; 3. 把结果显示出来; 4. 同时能给出友情提示。 计算体重是否标准的常用公式为: x= 体重 kg/( 身高 m 的平方 ), x 介于 19.5 和 23 之间是标准身材,大于 23 就有点肥胖,小于 19.5 就有点偏瘦了。,数学函数,三角函数中的参数应是弧度数,如数学中sin30应写为:sin(30*3.1415926/180),Rnd函数返回0,1) 即包括0,但不包括1)之间的一个随机双精度数,它往往和randomize结合使用。,返回=X的最大整数,使用数学函数时需要注意以下几点。 (1) 三角函数中的参数应是弧度数,如数学中sin30应写为:sin(30*3.14159/180) (2) Rnd函数返回0,1) 即包括0,但不包括1)之间的一个随机双精度数,它往往和randomize结合使用。 Private form1_click() randomize Print rnd() End sub,思考:,如何产生1-10之间的整数,Int(rnd()*10)+1,字符串函数,日期函数,Date()函数返回系统的当前日期。 Time()函数返回系统的当前时间,如:dtmBeginTime = Time(),将系统当前时间赋给变量dtmBeginTime。 以此类推,Day()、Month()、Year()函数分别返回指定日期的日数、月份数、年份数。,常用转换函数,程序的基本结构,顺序结构:按照由上到下的顺序一行一行地执行。程序中没有分支,没有重复。 选择结构:根据不同的条件判断来决定程序执行走向的结构。程序中有分支,没有重复。 循环结构:根据条件判断,需要重复执行某一段代码的程序。程序中可能存在分支和重复。,1、顺序结构 Private Sub command1_Click() Dim a As Single Dim b As Single Dim c As Single a = text1.text b = text2.text c = a a = b b = c text1.text=a text2.text=b End Sub,2、选择结构 Private sub command1_click() Dim a as single A=val(text1.text) If a=60 then Print “合格” Else print “不合格” End if End sub,IF语句有:单分支选择结构, 形式为 If Then 语句块 End If;,双分支选择结构, 形式为 If Then 语句1 Else 语句2 End If;,If x mod 2=0 then Print “偶数” Else print “奇数” endif,例如: if x mod 2=0 then print “偶数” endif,多分支选择结构, 形式为 If Then ElseIf Then Else 语句块 n+1 End If,X=t/(s*s) If x23 then Str=“您的体形偏胖” Elseif x19.5 then str=“您的体形偏瘦” else str=“您的体形很完美” endif,例:输入一学生成绩,评定其等级。方法是:90100分为“优秀”,8089分为“良好”,7079分为“中等”,6069分为“及格”,60分以为“不合格”,使用IF语句实现的程序段如下: If x=90 then Print “优秀“ ElseIf x=80 Then Print “良好“ ElseIf x=70 Then Print “中等“ ElseIf x=60 Then Print “及格“ Else Print “不及格“ End If,Select case x Case 90 to 100 Print “优秀” Case 80 to 89 Print “良好” Case 70 to 79 Print “中等” Case 60 to 69 Print “及格” Else print “不及格” End select,当程序出现多分支选择时,用If语句比较烦琐,而使用多分支选择Select Case语句就方便多了。,Select case x Case is23 str=“您的体形偏胖” Case is19.5 str=“您的体形偏瘦” Case else str=“您的体形很完美” End select b,Select case month Case 1,3,5,7,8,10,12 print “大月” Case 2 print “平月” Case else print “小月” End select,Select case x mod 2 Case 0 print “偶数” Case 1 print “奇数” End select,语法格式为: Select Case 表达式的值 Case 情况1 语句块1 Case 情况2 语句块2 Case Else 语句块n End Select,课堂练习,编写程序:用计算机产生一个1到12之间的随机数整数做为月份数,然后判断这个月是哪个季节的,并输出该月数及判断结果。,程序代码 Private Sub command1_Click() Dim a As Integer Randomize a = Int(Rnd() * 12) + 1 if a=3 then Label1.Caption = Str(a) & “月份是“ & “春季“ elseif a=6 then Label1.Caption = Str(a) & “月份是” & “夏季” elseif a=9 then Label1.Caption = Str(a) & “月份是“ & “秋季“ else Label1.Caption = Str(a) & “月份是“ & “冬季“ endif end Sub,Private Sub command1_Click() Dim a As Integer Randomize a = Int(Rnd() * 12) + 1 Select Case a Case 1 To 3 Label1.Caption = Str(a) & “月份是春季“ Case 4 To 6 Label1.Caption = Str(a) & “月份是夏季“ Case 7 To 9 Label1.Caption = Str(a) & “月份是秋季“ Case Else Label1.Caption = Str(a) & “月份是冬季“ End Select end Sub,下面是两种正确的嵌套形式: (1) IF Then IF Then Else End If . Else . IF Then Else End If End IF,选择结构的嵌套,(2) IF Then Select Case Case IF Then Else End If Case. End Select . End IF,3、循环结构,循环结构:根据条件判断,需要重复执行某一段代码的程序。程序中可能存在分支和重复。,VB中提供了两种类型的循环语句: 计数循环语句和条件型循环语句,1. For循环语句(已知循环次数的计数型循环) 语句形式: For 循环变量 = 初值 To 终值 Step 步长 循环体语句块 Next 循环变量 相当于循环变量=循环变量+step,Step缺省则默认为1,For-Next循环的执行过程是: 循环变量取初值; 循环变量与终值比较,没有超过终值转,否则循环结束,接着执行循环语句的后继语句; 执行一次循环体; 循环变量增加一个步长增量; 重复步骤。,For 循环变量 = 初值 To 终值 Step 步长 循环体语句块 Next 循环变量 说明: 1) 循环变量必须为数值型 2)步长一般为正,初值小于终值;若为负,初值大于终值;缺省步长为1; 3)语句块可以是一句或多句语句,称为循环体; 循环次数=int(终值 - 初值)/步长+1) 4)退出循环后,循环变量的值保持退出时的值; 5)在循环体内对循环变量可多次引用,但不要对其赋值,否则影响结果。,思考: 1.若有如下一段代码: For j=15 to 3 Step 2 Print j Next j 则循环结束时,循环变量j的值是多少? 2.循环变量的增量能否为0,如果为0,运行结果怎样?,无休止地做循环,也叫

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论