版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、自信快乐、健康成长 20124.1 第第4章章 基本的控制结构基本的控制结构 4. 1 顺序结构顺序结构( (掌握)掌握) 4.2 4.2 选择结构选择结构( (重点掌握)重点掌握) 4.3 4.3 循环结构循环结构( (重点掌握)重点掌握) 4.4 4.4 其他辅助控制语句(理解)其他辅助控制语句(理解) 4.5 4.5 综合应用(掌握)综合应用(掌握) 4.6 4.6 程序调试(掌握)程序调试(掌握) 自信快乐、健康成长 20124.2 4.1 4.1 顺序结构顺序结构 4.1.1 4.1.1 赋值语句赋值语句 赋值语句是程序设计的最基本语句。赋值语句是程序设计的最基本语句。 形式如下:形
2、式如下: 变量名变量名| |或对象的属性或对象的属性= =表达式表达式 表达式:表达式:可以是任何类型的表达式,可以是任何类型的表达式, 类型应与变量名的类型应与变量名的类型一致类型一致。 顺序结构就是各语句按出现的先后次序执行。顺序结构就是各语句按出现的先后次序执行。 自信快乐、健康成长 20124.3 例如: 将将0.1赋给单精度变量赋给单精度变量sngRate sngRate!=0.1 清除文本框的内容清除文本框的内容 Text1.text= 文本框显示字符串文本框显示字符串欢迎使用欢迎使用VB6.0 Text1.text= 欢迎使用欢迎使用VB6.0 4.1.1 4.1.1 赋值语句赋
3、值语句 自信快乐、健康成长 20124.4 赋值时,右边表达式类型与左边变量类型赋值时,右边表达式类型与左边变量类型不同时不同时的处理方式的处理方式 当表达式为数值型而与当表达式为数值型而与变量精度不同时变量精度不同时,强制,强制 转换成左边转换成左边变量的精度;变量的精度; 例:例: Private Sub Form_Click() m = 4.7: n% = 3.5 Print m=; m Print n=; n End Sub 4.1.1 4.1.1 赋值语句赋值语句 自信快乐、健康成长 20124.5 当表达式为数字字符串,当表达式为数字字符串,左边变量是数值类左边变量是数值类 型型,
4、自动转换成数值类型再赋值自动转换成数值类型再赋值,当表达式,当表达式 有非数字字符或空串时,则出错;有非数字字符或空串时,则出错; 4.1.1 4.1.1 赋值语句赋值语句 Private Sub Form_Click() n% = la123 Print n=; n End Sub Private Sub Form_Click() n% = 123 + 15 Print n=; n End Sub 自信快乐、健康成长 20124.6 当逻辑型赋值给数值型时,当逻辑型赋值给数值型时,True转换为转换为-1,False转换转换 为为0,反之当数值型赋值给逻辑型,反之当数值型赋值给逻辑型,非非0
5、转换为转换为True ,0 转换为转换为False; 4.1.1 4.1.1 赋值语句赋值语句 Private Sub Form_Click() Dim m As Boolean, n As Boolean m = 0: n = 3 a% = True: b% = False Print a=; a Print b=; b Print m=; m Print n=; n End Sub 自信快乐、健康成长 20124.7 4.1.1 4.1.1 赋值语句赋值语句 任何任何非字符类型非字符类型赋值给赋值给字符类型字符类型,自动转换为,自动转换为字符类型字符类型。 Private Sub Form
6、_Click() Dim a As String a = 12 b = 15 Print a + 10 Print b + 10 End Sub 自信快乐、健康成长 20124.8 注意:注意: 赋值号和关系运算符等于都用赋值号和关系运算符等于都用“=”表示,表示,VB会自会自 动判断。动判断。 例:例:a=3 把把3赋给赋给a if a=3 判断判断a是否等于是否等于3 赋值号左边的变量只能是变量,不能是常量、常赋值号左边的变量只能是变量,不能是常量、常 数符号、表达式。数符号、表达式。 以下语句错误:以下语句错误: Sin(x)=x+y 5=Sqr(s)+x+y x+y=3 4.1.1 4
7、.1.1 赋值语句赋值语句 自信快乐、健康成长 20124.9 不能在一句赋值语句中,同时给多个变量赋值。不能在一句赋值语句中,同时给多个变量赋值。 例:例:x=y=z=1 语法没错,结果不正确语法没错,结果不正确 4.1.1 4.1.1 赋值语句赋值语句 Private Sub Form_Click() Dim x%, y%, z% x = y = z = 1 Print x=; x Print y=; y Print z=; z End Sub 先计算右边表达式的值先计算右边表达式的值,然后赋给左边的变量然后赋给左边的变量 Private Sub Form_Click() Sum = 1:
8、 n = 0 n = n + 1 Sum = Sum + n Print n=; n Print Sum=; Sum End Sub 只有最左边只有最左边 的的”=“为赋值号为赋值号, 其他为关系符其他为关系符 自信快乐、健康成长 20124.10 4.1.2 4.1.2 数据的输入输出数据的输入输出 PrintPrint方法和格式函数方法和格式函数 1 1) PrintPrint方法方法 格式:格式: 对象对象. Print Spc(n)|Tab(n)表达式列表表达式列表 , | ; 功能:功能:计算表达式的值,并在指定的对象上输出计算表达式的值,并在指定的对象上输出 表达式的值。表达式的值
9、。 自信快乐、健康成长 20124.11 说明:说明: 对象可以是:对象可以是: 窗体、立即窗口(窗体、立即窗口(Debug)、 图片框(图片框(PictureBox)、 打印机(打印机(Printer), 若省略对象名,则在窗体上输出。若省略对象名,则在窗体上输出。 Spc(n)函数函数 输出时从输出时从当前位置当前位置跳过跳过n个空格,允许重个空格,允许重 复使用。复使用。 Tab (n)函数函数 输出表达式时定位于输出表达式时定位于第第n列列,允许重复,允许重复 使用。使用。 表达式列表表达式列表 要输出的数值或字符串表达式,若省略,要输出的数值或字符串表达式,若省略, 则换行。则换行。
10、 4.1.2 4.1.2 数据的输入输出数据的输入输出 自信快乐、健康成长 20124.12 4.1.2 4.1.2 数据的输入输出数据的输入输出 格式:格式:对象对象. Print Spc(n)|Tab(n)表达式列表表达式列表 , | ; 补例:补例: Private Sub Form_Click() FontSize = 20 Print 相信自己是最棒的相信自己是最棒的 Picture1.FontSize = 15 Picture1.Print 超越自己超越自己 Debug.Print ok 表示在立即窗口中输出表示在立即窗口中输出OK End Sub 自信快乐、健康成长 20124.
11、13 Private Sub Command1_Click() Print 1, 2 + 1 Print 1; 2; 3 + 4 Print Micro; soft End SubEnd Sub ,(逗号逗号):输出项按输出项按分区输出分区输出格式显示(在格式显示(在第第1列、第列、第 15列列等依次输出)若是数值型数据,则在数的后面输等依次输出)若是数值型数据,则在数的后面输 出一个空格。若是正数,则在数的前面还要先输出一个空格。出一个空格。若是正数,则在数的前面还要先输出一个空格。 输出字符串时,前后无空格。输出字符串时,前后无空格。 ;(分号分号) :按按紧凑格式紧凑格式输出,光标定位在
12、上一个显示的输出,光标定位在上一个显示的 字符后。字符后。 4.1.2 数据的输入输出数据的输入输出 自信快乐、健康成长 20124.14 若若省略语句省略语句行末尾的分隔符行末尾的分隔符,则自动换行,则自动换行, ,否则不换行否则不换行. . Private Sub Command1_Click()Private Sub Command1_Click() a = 3 : b = 4 a = 3 : b = 4 Print a+b=; a + b Print a+b=; a + b Print Print 输出一个空行输出一个空行 Print a-b=; Print a-b=; 输出后不换行输
13、出后不换行 Print a - b Print a - b 输出后换行输出后换行 Print Print a+2=a+2=, , Print a + 2 Print a + 2 End SubEnd Sub 4.1.2 数据的输入输出数据的输入输出 自信快乐、健康成长 20124.15 补充:区别赋值号补充:区别赋值号“=”与关系运算符与关系运算符“=” Private Sub command1_Click() a = 3: b = 4: c = 4 a = b = c Print a; Print a = b = c End Sub 注意:注意:形如形如a=b=ca=b=c若单独出现时,则第
14、一个若单独出现时,则第一个“= =”为赋值号,为赋值号, 第二个第二个“= =”为关系运算符,先算关系运算,然后再赋值,为关系运算符,先算关系运算,然后再赋值, 形如形如a=b=c若若出现在出现在printprint语句中,语句中,“= =”都是关系运算符,都是关系运算符, 按从左到右计算。按从左到右计算。 赋赋 值值 号号 两个两个“=”都都 是关系运算是关系运算 符符 False与数与数 值比较时,自值比较时,自 动转换为动转换为0。 关系运算符关系运算符 自信快乐、健康成长 20124.16 06年4月等考实验书 P46 设设x=4,y=6,则以下不能在窗体上显示出,则以下不能在窗体上显
15、示出“A=10”的语的语 句是句是( ) 。 A) Print A=x+y B) PrintA=;x+y C) Print A=+Str(x+y) D) PrintA= How are you Print Tab(4); hello; Tab; word Print Tab(1); hello; Tab(20); Thank End Sub 参数参数n省略时省略时,在下一个分区输出在下一个分区输出word 自信快乐、健康成长 20124.18 Spc函数函数 功能:功能:从从当前位置当前位置跳过跳过n个空格个空格 格式:格式:Spc(n) 例:例: Private Sub Command1_C
16、lick() Print hello; Tab(10); word 在第在第10列输出列输出word Print hello; Spc(10); word 在第在第16列输出列输出word End Sub 4.1 .2 数据的输入输出数据的输入输出 自信快乐、健康成长 20124.19 注意:Spc函数不能用在表达式中 下面叙述正确的是_。实验书P42-5 A) Spc函数既能用于Print方法中,也能用于表达式 B) Space函数既能用于Print方法中,也能用于表达式 C) Spc函数与Space函数均生成空格,没有区别 D) 以上说法均不对 B 自信快乐、健康成长 20124.20 例
17、例4.1 用用Print方法输出图形。方法输出图形。 Private Sub Form_Click() For i = 1 To 5 Print Tab(i); String(6 - i, ); Spc(6); String(i, ) Next i End Sub 4.1 .2 数据的输入输出数据的输入输出 书书P76 程序的第程序的第3行应为:行应为: Print Tab(i); String(6 - i, ); Spc(6); String(i, ) 自信快乐、健康成长 20124.21 将例将例4.1程序中的程序中的Spc(6)改为改为Tab(6),将窗体的,将窗体的 AutoRedra
18、w属性设为属性设为True,程序运行如下。,程序运行如下。 Private Sub Form_Load() For i = 1 To 5 Print Tab(i); String(6 - i, ); Tab(6); String(i, ) Next i End Sub 当窗体的当窗体的 AutoRedraw属性设为属性设为 True时,允许更新窗体内容,时,允许更新窗体内容, Print方法在方法在Form_Load() 事件中有效果事件中有效果,否则无效,否则无效, “”占两列宽占两列宽 4.1 .2 数据的输入输出数据的输入输出 自信快乐、健康成长 20124.22 2) 用于用于Prin
19、t方法的格式输出函数方法的格式输出函数 格式:格式:Format (表达式表达式, 格式字符串格式字符串) 其中:其中: 表达式:表达式:要格式化的数值、日期和字符串类型表达式;要格式化的数值、日期和字符串类型表达式; 格式字符串:表示按其指定的格式输出表达式的值格式字符串:表示按其指定的格式输出表达式的值 格式字符串有三类:格式字符串有三类:数值格式数值格式、日期格式日期格式、字符串格式字符串格式, 格式字符串要加格式字符串要加引号引号。 数值格式化数值格式化是将数值表达式的值按格式字符串指是将数值表达式的值按格式字符串指 定的格式输出。定的格式输出。 常用自定义数值转换控制符有:常用自定义
20、数值转换控制符有: # , 0 , $ , , , E , % 等等 4.1 .2 数据的输入输出数据的输入输出 自信快乐、健康成长 20124.23 常用数值格式化符号常用数值格式化符号* 字符字符说说 明明 # 数字占位符。显示一位数字或什么都不显示。数字占位符。显示一位数字或什么都不显示。如果表达式如果表达式 在格式字符串中在格式字符串中# #的位置上有数字存在,那么就显示出来的位置上有数字存在,那么就显示出来 ,否则,该位置什么都不显示,否则,该位置什么都不显示 0 数字占位符。显示一位数字或是零。数字占位符。显示一位数字或是零。如果表达式在格式字如果表达式在格式字 符串中符串中0 0
21、的位置上有一位数字存在,那么就显示出来,否的位置上有一位数字存在,那么就显示出来,否 则就以零显示则就以零显示 .小数点占位符小数点占位符 , 千分位符号占位符千分位符号占位符, ,数据项从左边一位开始,每数据项从左边一位开始,每3 3位用一个逗号分开位用一个逗号分开 % 百分比符号占位符。百分比符号占位符。表达式乘以表达式乘以100100。而百分比字符(。而百分比字符(% %) 会插入到格式字符串中出现的位置上会插入到格式字符串中出现的位置上 $在数字前强加美元符号在数字前强加美元符号$ $ E+用指数形式显示数值用指数形式显示数值 E-用指数形式显示数值用指数形式显示数值 自信快乐、健康成
22、长 20124.24 例:格式化输出例:格式化输出 Private Sub Form_Click() s = 12.2345 b = 12 Print Format(s, 0.00), Format(b, 0.00) Print Format(s, #.#), Format(b, #.#) End Sub 输出的数位数不足时输出的数位数不足时: #: 用空格补用空格补 0: 用用0补补 4.1 .2 数据的输入输出数据的输入输出 自信快乐、健康成长 20124.25 例:格式化输出例:格式化输出 Private Sub Form_Click() Print FormatFormat (1234
23、5.6, 000,000.00) Print Format(12345.6, #,#.#) Print Format(12345.678, #,#.#) Print Format(12345.6, $#,#0.00) Print Format(0.123, 0.00%) Print Format(12345.6, 0.00E+00) End Sub 012,345.60 12,345.6 12,345,68 $12,345.60 12.30% 1.23E+04 注意:百分比符号占位符。注意:百分比符号占位符。表达式乘以表达式乘以100。而百。而百 分比字符(分比字符(%)会插入到格式字符串中出
24、现的位)会插入到格式字符串中出现的位 置上。置上。 4.1 .2 数据的输入输出数据的输入输出 自信快乐、健康成长 20124.26 例例4.2:利用:利用Format函数显示函数显示1180之间每隔之间每隔10对应对应 的弧度、的弧度、sin、cos、平方根和、平方根和e指数的函数值指数的函数值 4.1 .2 数据的输入输出数据的输入输出 自信快乐、健康成长 20124.27 Private Sub Form_Click() Print Spc(25); 数学函数表数学函数表 Print String(60, -) Print i x sin(x) cos(x) sqr(i) exp(x)
25、For i = 0 To 180 Step 10 x = i * 3.14159 / 180 Print Format(i, 000); Spc(3); Format(x, 0.00000); Tab(17); Print Format(Sin(x), 0.00000); Tab(27); Print Format(Cos(x), 0.00000); Tab(37); Print Format(Sqr(i), 0.00000); Tab(47); Format(Exp(x), 0.00000) Next i End Sub 书书P79程序第程序第3行应为:行应为: x = i * 3.1415
26、9 / 180 4.1 .2 数据的输入输出数据的输入输出 自信快乐、健康成长 20124.28 日期和时间格式化日期和时间格式化是将日期类型表达式的值或数值表达式的是将日期类型表达式的值或数值表达式的 值以日期、时间的序数值按格式字符串指定的格式输出。值以日期、时间的序数值按格式字符串指定的格式输出。 符号符号作用作用 d dd ddd dddd ddddd dddddd 显示日期(显示日期(131),个位前不加),个位前不加0 显示日期(显示日期(131),个位前加),个位前加0 显示星期缩写(显示星期缩写(SunSat) 显示星期全名(显示星期全名( SundaySaturday) 显示
27、完整日期(显示完整日期( yy/mm/dd) 显示完整长日期(显示完整长日期( yyyy年年m月月d日日) w ww 星期为数字(星期为数字(17,1是星期日)是星期日) 一年中的星期数(一年中的星期数(153) m mm mmm 显示月份(显示月份(112),个位前不加),个位前不加0 显示月份(显示月份(0112),个位前加),个位前加0 显示月份缩写(显示月份缩写(JanDec) 常用日期和时间格式化符号常用日期和时间格式化符号(一般了解一般了解) 4.1 .2 数据的输入输出数据的输入输出 自信快乐、健康成长 20124.29 符号符号作用作用 mmmm显示月份全名(显示月份全名(Ja
28、nuaryDecember) y yy yyyy 显示一年中的天(显示一年中的天(1366) 两位数显示年份(两位数显示年份(0099) 四位数显示年份(四位数显示年份(00009999) q季度数(季度数(14) h显示小时(显示小时(023),个位前不加),个位前不加0 hh显示小时(显示小时(0023),个位前加),个位前加0 m在在h后显示分(后显示分(059),个位前不加),个位前不加0 mm在在h后显示分(后显示分(0059),个位前加),个位前加0 s显示秒(显示秒(059),个位前不加),个位前不加0 ss显示秒(显示秒(0059),个位前加),个位前加0 tttt显示完整时间
29、,默认格式显示完整时间,默认格式hh:mm:ss AM/PM,am/pm12小时的时钟,小时的时钟,中午前为中午前为AM或或am,中午后为,中午后为PM或或pm A/P,a/p12小时的时钟,小时的时钟,中午前为中午前为A或或a,中午后为,中午后为P或或p 4.1 .2 数据的输入输出数据的输入输出 自信快乐、健康成长 20124.30 例如:利用例如:利用Format函数输出显示有关的日期和时间,在窗体的标题栏显函数输出显示有关的日期和时间,在窗体的标题栏显 示当时运行的日期和时间,窗体的图标该为时钟。示当时运行的日期和时间,窗体的图标该为时钟。 Private Sub Form_Click
30、() Form1.Caption = Now mytime = #9:21:30 PM# mydate = #8/31/2003# Print Format(mydate, m/d/yy) Print Format(mydate, mmmm-dddd-yyyy) Print Format(mytime, h-m-s AM/PM) Print Format(mytime, hh:mm:ss A/P) Print Format(Date, dddddd) Print FormatDateTime(Now) End Sub 4.1 .2 数据的输入输出数据的输入输出 自信快乐、健康成长 20124.
31、31 字符串格式化是将字符串按指定的格式输出。字符串格式化是将字符串按指定的格式输出。 常用的字符串格式符号及举例常用的字符串格式符号及举例(一般了解一般了解) 符号符号作用作用字符串表达式字符串表达式格式化字符串格式化字符串显示结果显示结果 强迫以小写显示强迫以小写显示HELLO“强迫以大写显示强迫以大写显示hello“”HELLO 实际字符位数小于符号位实际字符位数小于符号位 数,字符前加空格数,字符前加空格 ABCDEF “” ABCDEF 、; b; 、; c; 中最大值是:中最大值是:; max End Sub Private Sub Command2_Click() End End
32、 Sub 输出max 4.2.1 If 选择结构选择结构 自信快乐、健康成长 20124.52 格式格式1: If Then Else End If 表达式表达式 TrueFalse 语句块语句块1语句块语句块2 N-S图图 表达式表达式 语句块语句块2 False True 语句块语句块1 流程图流程图 2. IfThen Else语句(语句(双分支双分支块块结构结构) 4.2.1 If 选择结构选择结构 自信快乐、健康成长 20124.53 2. IfThen Else语句(双分支行结构)语句(双分支行结构) 表达式表达式 语句语句2 False True 语句语句1 表达式表达式 Tru
33、eFalse 语句语句1语句语句2 格式格式2:If Then ELSe 执行过程:执行过程: 4.2.1 If 选择结构选择结构 自信快乐、健康成长 20124.54 例如计算分段函数:例如计算分段函数: 1sin 2 xx xxx3cos 3 y= 0 x 0 x 1)用单分支结构实现用单分支结构实现 一条单分支语句:一条单分支语句: y=cos(x)-x3+3*x If x0 then y=sin(x)+sqr(x*x+1) 或两条单分支语句或两条单分支语句: If x0 then y=sin(x)+sqr(x*x+1) If x=0 then y=cos(x)-x3+3*x 4.2.1
34、 If 选择结构选择结构 自信快乐、健康成长 20124.55 2)用双分支结构实现 If x0 then y=sin(x)+sqr(x*x+1) Else y=cos(x)-x3+3*x End If 以下程序是否能正确实现?以下程序是否能正确实现? If x0 then y=sin(x)+sqr(x*x+1) y=cos(x)-x3+3*x 或或: If x0 then y=sin(x)+sqr(x*x+1) Else y=cos(x)-x3+3*x 1sin 2 xx xxx3cos 3 y= 0 x 0 x 不正确不正确: 不能实现分支功能不能实现分支功能,不管不管x是多是多 少少,都
35、按都按y=cos(x)-x3+3*x计算计算 4.2.1 If 选择结构选择结构 自信快乐、健康成长 20124.56 If表达式表达式1Then ElseIf表达式表达式2Then ElseIf表达式表达式3Then . Else End If 可选项可选项 3. IfThenElse(多分支构)(多分支构) 执行过程执行过程: : 当当条件条件1 1的值为的值为 TrueTrue时,则执行语句时,则执行语句 块块1 1,然后执行,然后执行Endif Endif 下面的语句,若条件下面的语句,若条件1 1 为为FalseFalse时,继续判断时,继续判断 条件条件2 2,当,当条件条件2 2
36、的值的值 为为TrueTrue时,则执行语时,则执行语 句块句块2 2,然后执行,然后执行 Endif Endif 下面的语句,下面的语句, 依次类推依次类推, 当前面的所有当前面的所有条条 件均不成立时件均不成立时,执行,执行 语句块语句块n+1n+1。 Elseif不能分开写不能分开写 Elseif后面要写表达式后面要写表达式 Else后面不写条件后面不写条件 必须分行写必须分行写 可写在一行上可写在一行上 自信快乐、健康成长 20124.57 表达式表达式1? 表达式表达式2? 表达式表达式n? 语句块语句块1语句块语句块2语句块语句块n语句块语句块n+1 F F F T T T 多分支
37、结构的流程:多分支结构的流程: 注意:注意: l 程序只执行一个分支程序只执行一个分支 l 多个分支同时满足条多个分支同时满足条 件,只执行第一个与件,只执行第一个与 之匹配的语句块之匹配的语句块 4.2.1 If 选择结构选择结构 自信快乐、健康成长 20124.58 例例4.5已知变量已知变量strC中存放了一个字符,判断该字符是字母中存放了一个字符,判断该字符是字母 字符、数字字符还是其他字符。并作相应提示。字符、数字字符还是其他字符。并作相应提示。 Private Sub Form_Click() strC = InputBox(请输入一个字符请输入一个字符) If UCase(str
38、C) = A And UCase(strC) = 0 And strC =90 80=mark90 70=mark80 60=mark70 Mark= 90 Then Print 优优 ElseIf mark = 80 Then Print 良良 ElseIf mark = 70 Then Print 中中 ElseIf mark = 60 Then Print 及格及格 Else Print 不及格不及格 End If 哪种方法不正确?哪种方法不正确? 4.2.1 If 选择结构选择结构 自信快乐、健康成长 20124.60 方法二方法二 If mark = 90 Then Print 优优
39、 ElseIf 80 = mark AND mark 90 Then Print 良良 ElseIf 60 = mark AND mark 70 Then Print “及格及格 ElseIf 70 = mark AND mark = 60 Then Print 及格及格 ElseIf mark = 70 Then Print “ 中中 ElseIf mark = 80 Then Print “良良 ElseIf mark = 90 Then Print 优优 Else Print 不及格不及格 End If 书上书上P89 方法二有错误方法二有错误 语法没错语法没错,但不能得但不能得 到正确
40、的结果到正确的结果? 4.2.1 If 选择结构选择结构 自信快乐、健康成长 20124.61 语句形式如下:语句形式如下: If 表达式表达式1 Then If 表达式表达式11 Then End If End If 4. If语句的嵌套:语句的嵌套: If语句或语句或Else后面的语句块中可以嵌套一个后面的语句块中可以嵌套一个if语句。语句。 注意:注意: 书写时注意锯齿结构书写时注意锯齿结构 多个多个If嵌套,嵌套, End If 与它最接近的与它最接近的If配对配对 4.2.1 If 选择结构选择结构 自信快乐、健康成长 20124.62 补充函数: IsNumeric(表达式表达式)
41、 作用作用: 判断括号中的数据是否为数值型判断括号中的数据是否为数值型,若是数值型若是数值型,则返回则返回 True,否则返回否则返回False Private Sub Command1_Click() Print IsNumeric(123456) Print IsNumeric(Text1) Print IsNumeric(Text2) End Sub 4.2.1 If 选择结构选择结构 自信快乐、健康成长 20124.63 例例4.4 编一个账号和密码输入的检验程序。对输入的账号和密码规定如下:编一个账号和密码输入的检验程序。对输入的账号和密码规定如下: 账号不超过账号不超过6位数字,以
42、按位数字,以按Tab键表示输入结束;键表示输入结束; 密码密码4位字符,输入文本框以位字符,输入文本框以“*”显示,单击显示,单击“确定确定”按钮表示输按钮表示输 入结束,密码假定为入结束,密码假定为“Gong”; 当输入不正确,如账号为非数字字符,密码不正确等,显示有关信当输入不正确,如账号为非数字字符,密码不正确等,显示有关信 息,再输入。息,再输入。 默认控件名默认控件名标题标题(Caption) 文本文本(Text)边框边框(Borderstyle) 其他属性其他属性 Label1账号账号无定义无定义1 Label2密码密码无定义无定义1 Text1无定义无定义空白空白1 MaxLen
43、gth=6 Text2无定义无定义空白空白1 MaxLength=4 Passwordchar=“*” Command1 确定确定无定义无定义无定义无定义 控件设置控件设置 4.2.1 If 选择结构选择结构 自信快乐、健康成长 20124.64 例例4.4 编一个账号和密码输入的检验程序。对输入的账号和密码规定如下:编一个账号和密码输入的检验程序。对输入的账号和密码规定如下: 账号不超过账号不超过6位数字,以按位数字,以按Tab键表示输入结束;键表示输入结束; 密码密码4位字符,输入文本框以位字符,输入文本框以“*”显示,单击显示,单击“确定确定”按钮表示输按钮表示输 入结束,密码假定为入结
44、束,密码假定为“Gong”; 当输入不正确,如账号为非数字字符,密码不正确等,显示有关信当输入不正确,如账号为非数字字符,密码不正确等,显示有关信 息,再输入。息,再输入。 4.2.1 If 选择结构选择结构 自信快乐、健康成长 20124.65 Private Sub Form_Load() Text2.PasswordChar = * Text2.Text = Text1 = End Sub Private Sub Text1_LostFocus() If Not IsNumeric(Text1) Then MsgBox 账号有非数字字符的错误账号有非数字字符的错误 Text1.Text
45、= Text1.SetFocus End If End Sub 其中其中: If Not IsNumeric(Text1) Then等价等价: If Not IsNumeric(Text1)=true Then 注意注意: 如果条件表达式的结果如果条件表达式的结果 为逻辑型为逻辑型, 若省略运算符若省略运算符 号号, 则表示则表示”=True” 自信快乐、健康成长 20124.66 Private Sub Command1_Click() Dim i As Integer If Text2.Text Gong Then i = MsgBox(密码错误密码错误, 5 + vbExclamatio
46、n, 输入密码输入密码) If i = 2 Then 表示单击了表示单击了“取消取消”按钮,则结束按钮,则结束 End Else 表示单击了表示单击了“重试重试”按钮,则清除文本框按钮,则清除文本框text2 Text2.Text = Text2.SetFocus End If End If End Sub 注意注意: 密码是字母时密码是字母时,要注意大小写要注意大小写 多个多个If嵌套,嵌套,End If与它最接近的与它最接近的If配对配对 书写时注意锯齿结构书写时注意锯齿结构 4.2.1 If 选择结构选择结构-IF嵌套嵌套 自信快乐、健康成长 20124.67 4.2.2 Select
47、Case 语句语句 其中:变量或表达式(其中:变量或表达式(可以是可以是数值数值或或字符串字符串表达式)表达式) 格式:格式: Select Case Case Case . Case Else End Select 表达式列表表达式列表1?语句块语句块1 表达式列表表达式列表2?语句块语句块2 表达式列表表达式列表n?语句块语句块3 语句块语句块n+1 T T T F F F 自信快乐、健康成长 20124.68 表达式列表表达式列表i:与与“变量或表达式变量或表达式”的类型必须相同,可以是以下四种形式之的类型必须相同,可以是以下四种形式之 一一 表达式表达式 : Case int(4*rn
48、d) 一组用逗号分隔的枚举值一组用逗号分隔的枚举值 Case “a”,”e”,”i”,”o”,”u” 表示元音字母表示元音字母 表达式表达式1 To 表达式表达式2 Case 1 to 10 表示测试表达式的值在表示测试表达式的值在110之间之间 Is 关系运算符表达式关系运算符表达式 Case 2,4,6,8,Is10 表示测试表达式的值为表示测试表达式的值为2,4,6,8,或或大于大于10 4.2.2 Select Case 语句语句 数值或字符串表达式数值或字符串表达式, 多个时,用多个时,用“,”分开,表示分开,表示“或或”的关系的关系 用来指定一个值范围,用来指定一个值范围,较小的较
49、小的值要出现在值要出现在To之前之前; 在在Case中中不能写成如不能写成如x=1 and x=10 形式的表达式形式的表达式 自信快乐、健康成长 20124.69 执行过程:执行过程: (1)计算)计算的值的值 (2)将)将的值与的值与Case语句中的语句中的中的每一个中的每一个 值逐一进行比较。如果值逐一进行比较。如果与其中的一个值与其中的一个值相匹配,则执行该语句中的相匹配,则执行该语句中的,然后再执行,然后再执行End Select下面的语句。下面的语句。 表达式列表表达式列表1?语句块语句块1 表达式列表表达式列表2?语句块语句块2 表达式列表表达式列表n?语句块语句块3 语句块语句
50、块n+1 T T T F F F 4.2.2 Select Case 语句语句 自信快乐、健康成长 20124.70 例例:下列程序段的执行结果为下列程序段的执行结果为 X=Int(Rnd()+4) Select Case X Case 5 Print 优秀优秀 Case 4 Print 良好良好 Case 3 Print 通过通过 Case Else Print 不通过不通过 End Select A) 优秀优秀 B) 良好良好 C) 通过通过 D) 不通过不通过 4.2.2 Select Case 语句语句 自信快乐、健康成长 20124.71 例例:下列程序段的执行结果为下列程序段的执行
51、结果为_。 Private Sub Form_Click() x = 2 Select Case x * x Case 4 Print 优秀优秀 Case 4 Print 良好良好 Case 3 Print 通过通过 Case Else Print 不通过不通过 End Select End Sub A) 优秀优秀 B) 良好良好 C) 通过通过 D) 不通过不通过 说明:说明:如果如果不止一个不止一个 Case与与 相匹配,则只对相匹配,则只对第一个第一个 匹配匹配的的 Case 执行与之执行与之 相关联的相关联的。 4.2.2 Select Case 语句语句 自信快乐、健康成长 2012
52、4.72 例例:下列程序段的执行结果为下列程序段的执行结果为_。 X=1 Select Case X2 Case 5 Print 优秀优秀 Case 4 Print 良好良好 Case 3 Print 通过通过 Case Else Print 不通过不通过 End Select A) 优秀优秀 B) 良好良好 C) 通过通过 D) 不通过不通过 说明:说明: 2.2.如果在表达式表如果在表达式表 列中列中没有一个值没有一个值与测与测 试表达式相匹配,则试表达式相匹配,则 Visual Basic Visual Basic 执行执行 Case Else Case Else 子句(此子句(此 项是
53、可选的)中的语项是可选的)中的语 句。句。 4.2.2 Select Case 语句语句 自信快乐、健康成长 20124.73 Is : 当测试表达式的值满足当测试表达式的值满足 “关系表达式指定条件关系表达式指定条件 时,执行该时,执行该 Case子句中的语句块。子句中的语句块。 Private Sub Form_Click () s=Val(InputBox(“input value of s:”) Select Case s Case Is 6 f=s+1 Case Is= A And UCase(strC) = 0 And strC = 9 Then Print strC + 是数字字
54、符是数字字符 Else Print strC + 其他字符其他字符 End If End Sub Private Sub Form_Click() strC = InputBox(请输入一个字符请输入一个字符) Select Case strC Case a To z, A To Z Print strC + 是字母字符是字母字符 Case 0 To 9 Print strC + 是数字字符是数字字符 Case Else Print strC + 是其他字符是其他字符 End Select End Sub 方法二方法二:用用Select Case语句语句 自信快乐、健康成长 20124.75
55、实验书实验书P80-12补例:假设补例:假设X的值是的值是5,则执行以下语句时,可得到的输,则执行以下语句时,可得到的输 出结果是出结果是AB的的Select case语句是语句是 A) Select case x case x=1 print AB End select B) Select case x case Is15,Is5,1,3 to 10 print AB End select D) Select case x Case Is4, 6 TO 8 print “CD” Case 5 print AB End select C 4.2.2 Select Case 语句语句 自信快乐、
56、健康成长 20124.76 例例4.6 已知坐标点(已知坐标点(x,y),判断其落在哪个象限。如果将实),判断其落在哪个象限。如果将实 现该功能的程序段分别表示如下:现该功能的程序段分别表示如下: 方法一方法一 Private Sub Form_Click() x = InputBox(请输入请输入x) y = InputBox(请输入请输入y) If x 0 And y 0 Then Print 在第一象限在第一象限 ElseIf x 0 Then Print 在第二象限在第二象限 ElseIf x 0 And y 0 And y 0 And y 0 不能出现逻辑表达式不能出现逻辑表达式 P
57、rint 在第一象限在第一象限 Case x 0 Print 在第二象限在第二象限 Case x 0 And y 0 And y 0 Print 在第四象限在第四象限 End select Sub 4.2.2 Select Case 语句语句 自信快乐、健康成长 20124.77 4.2.3 条件函数条件函数 1) IIf函数函数 格式:格式: IIf(表达式,表达式,True部分部分, False部分)部分) 功能功能: 当条件为真当条件为真,则执行则执行True部分部分,否则执行否则执行False部分部分 例如例如:用用IIF函数求函数求分分段段函数:函数: 方法一等价于:方法一等价于:
58、If x0 then y=2*x+3 Else y=4-3*x End if 方法一:方法一: y=IIf(x=0, 4-3*x , 2*x+3) 自信快乐、健康成长 20124.78 08.4月月 (15)现有语句:现有语句:y=IIf(x0,x Mod 3,0) 。 设设x=10, 则则y的值是的值是 A) 0 B)1 C) 3 D)语句有错)语句有错 06年年9月月 15)设)设a=5,b=6,c=7,d=8,执行下列语句后,执行下列语句后, x的值为的值为x=IIF(ab) And (cd),10,20) A)10 B)20 C)True D)False BB 自信快乐、健康成长 20
59、124.79 2) Choose函数函数 格式:格式: Choose(整数表达式整数表达式,值为值为1的返回值,值为的返回值,值为2的返回值的返回值值为值为n的返回值的返回值) 功能:功能:从参数列表中选择并返回一个值。从参数列表中选择并返回一个值。 1)表达式值为)表达式值为1时,函数值为时,函数值为“值为值为1的返回值的返回值”, 表达式表达式值为值为n时,时,表达式的值为表达式的值为“值为值为n的返回值的返回值”。 2)表达式值小于表达式值小于1或者超过选项的个数,则返回或者超过选项的个数,则返回Null 4.2.3 条件函数条件函数 自信快乐、健康成长 20124.80 Private
60、 Sub Form_Click() Print Choose(1, today, ok, good) Print Choose(3, today, ok, good) Print Choose(4, today, ok, good) Print Choose(-1, today, ok, good) End Sub 4.2.3 条件函数条件函数 自信快乐、健康成长 20124.81 例如:根据例如:根据Nop是是14的值,转换成、的值,转换成、 运算符的语句如下:运算符的语句如下: Op=Choose(Nop,”,”,”,”) 当值为当值为1时,返回字符串时,返回字符串”,然后放入,然后放入O
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 温州职业技术学院《创新创业能力训练》2023-2024学年第一学期期末试卷
- 二零二五版个人车位出租及车位租赁平台合作合同3篇
- 二零二五年度货物买卖合同涉及特定技术转让与售后服务2篇
- 2024版商场环保节能改造合同协议
- 二零二五版粉煤灰运输合同规范范本下载6篇
- 个性化房产代理合作协议样本(2024)版B版
- 2024版房地产经纪人与佣金合同3篇
- 二零二五年度适用于工程项目的自卸车租赁服务合同范本3篇
- 二零二五版基金代持及风险控制合作协议2篇
- 二零二五年餐饮店食品安全培训与认证协议2篇
- 舌咽神经痛演示课件
- 子宫内膜癌业务查房课件
- 社会学概论课件
- 华为经营管理-华为的研发管理(6版)
- C及C++程序设计课件
- 带状疱疹护理查房
- 公路路基路面现场测试随机选点记录
- 国家自然科学基金(NSFC)申请书样本
- 湖南省省级温室气体排放清单土地利用变化和林业部分
- 材料设备验收管理流程图
- 培训机构消防安全承诺书范文(通用5篇)
评论
0/150
提交评论