1、5、InputBox函数(1)简单格式 InputBox(提示信息(2)使用格式(赋值语句) 变量= InputBox(3)功能:从键盘上接受一个数据,然后赋值给某个变量(即读入一个任意值,保存到某变量中。(4)用InputBox函数输入的数据默认为字符型,但由于赋值语句的特点“右边服从左边”,通常会自动转换成相应类型值之后再赋值给变量。例如: a,b不定义就使用,被认为是变体型 b = InputBox(请输入一个整数: b Then Print b, a= a Then Print a, b输入的是“9”和“12”则会被当成字符串9和字符串12,赋值给a和b,而字符串按其ASCII码值比较
2、大小(字典序)。因此,“变量最好先定义再使用”二、双分支if语句 语句块1Else 语句块22If 表达式 Then 语句块1 Else 语句块22、功能3、说明格式1中Else独立占一行!4、举例改写上例:Option Explicit Dim a%, b% Print b, a Else Print a, b法二让a中存放较小数,b中存放较大数。 Dim a%, b%, t As Integer b Then 交换二者的值 t = a a = b b = t*重要基本算法:两数交换借助第三数。类似于两水杯交换其中的内容,借助第三个空杯子,最终空杯子依然是空的。但是,中间变量t却保存了a或b
3、的值。只是没用。例2:任意读入3个整数,从小到大输出这3个数。算法提示:让a中放最小数,c中放最大数 Dim a%,b%,c%,t% A=inputbox(“:”) b=inputbox(“: c=inputbox(“: if ab thent=a:a=b:b=t end ifc thena=c:c=t if bt=b:b=c: print a;b;c三、多分支if语句1格式 If 表达式1 then Elseif 表达式2 then Elseif 表达式3 then 语句块3 语句块n End if2功能3说明(1)各“表达式”通常为关系(、=等)表达式、逻辑表达式(Not、And、Or)(
4、2)Else子句可以省略(但一般不省),省略之后可能一个分支都不被执行。(3)各分支中最多只会有一个分支被执行到。4应用举例例2、商场打折:满500元打5折;满300不足500打6折;满200不足300打7折;满100不足200打8折;其余不打折。请为收银员编程,输出顾客应付款。 Dim cost As Single, x As Singlex表示商品原价 x = InputBox(读入原价 If x = 500 Then cost = x * 0.5 ElseIf x = 300 Then cost = x * 0.6= 200 Then cost = x * 0.7= 100 Then c
5、ost = x * 0.8 cost = x Print 应付款:; cost注意:对变量的判断,最好按从小到大或从大到小的顺序书写。例3、批发铅笔:满500支打5折;每支铅笔原价1元。法一:同前例法二:用Select Case语句四、Select Case语句(多分支)格式一 Select case 表达式 Case 表达式1:语句块1 Case 表达式2:语句块2 Case 表达式3:语句块3 Case Else:语句块n End Select格式二Select case 表达式 Case 表达式1 Case 表达式2 Case 表达式3 Case Else3说明:(1)Select ca
6、se后的表达式通常为常量、变量或算术表达式(2)而Case后的若干表达式只能是如下几种形式:单个常量(对应“Select case后的表达式”与该常量是否相等的判断)多个常量,两两之间用逗号隔开(对应“Select case后的表达式”与该多个常量中的某一个是否相等的判断)常量1 To 常量2(对应“常量1Select case后的表达式常量2”的判断)Is 关系运算符 数值(对应Select case后的表达式 数值或Select case后的表达式数值【 判断“select case 后的表达式”是否落在某case后所表示的范围内。 各case分支后的范围不要重合,更不能矛盾。】 某商场刚
7、开业,前10名或1000名之后打6折;第18名、28名打5折;第888名打1折;100名200名打5.5折; 其余打8折。 Dim yj As Single, xh As Integer Dim cost As Single yj = InputBox(输入原价: xh = InputBox(输入序号: Select Case xh Case 888: cost = yj * 0.1 Case 18, 28: cost = yj * 0.5 Case 100 To 200: cost = yj * 0.55Case Is = 1000, Is = 10cost = yj * 0.6 cost
8、= yj * 0.8您是第 xh; 号顾客,应付款打折后:由两数乘积是否为0,判断两数为0的情况。 Dim x%, y%x: y = InputBox(y: Select Case x * yCase 0 与Case Is=0等价x和y至少有一个为0Case Is 0Print x和y都不为0(3)Case Else分支可以省略,但省略后可能一个分支都不被执行。(4)“格式一”一般在各“语句块”为单个语句时用(5)当Select Case 后的表达式的值落在某表达式范围内时,就执行其所对应分支改写前例1、“读入成绩代号(AE),输出对应分数范围。” Dim fs As String fs =
9、InputBox(读入成绩AE! Select Case fs Case A:=90!B80-89C70-79D60-69E= 5: cost = n * 0.5 Case 3, 4: cost = n * 0.6 Case 2: cost = n * 0.7 Case 1: cost = n * 0.8 cost = n购买 n;支铅笔应付款: cost;元补充:对新文件的保存,只需按“保存”按钮,按出现的两个对话框的提示保存窗体(.frm)、工程文件(.vbp)。*对老文件的重新保存(或改变其名字、或改变其位置),(1)选择“文件” “工程另存为”,在弹出的对话框中修改.vbp文件的主名或
10、位置;(2)选择“文件” “ .frm另存为”,在弹出的对话框中修改.frm文件的主名或位置。*文本框的使用:能帮助完成输入、输出!1、属性(1)Text属性有一个默认值,建议在设计时就删除(2)Name(名称)属性默认为Text1、Text2没有Caption!2、用于输入:与赋值语句合用。格式变量名=文本框的Name属性值.Text说明(1)“.Text”可以省(2)文本框中输入的数据依然默认为字符型。(3)与InputBox函数类似,通常一次读入一个值给一个变量。(4)执行程序后,先往文本框中输入数据,然后再触发事件(单击命令按钮等)。3、用于输出文本框的Name属性值.Text=表达式
11、(1)MultiLine属性为True,则可多行显示(却一般默认为False)。(2)vbCrLf是系统常量,功能是“回车且换行”,可以用“Chr(10) & Chr(13)”(3)Chr是一个系统函数,参数是0-127(0-255)整数,对应ASCII码表里所有字符的ASCII码值。功能是将该ASCII码值对应的字符求出来。 Chr(65)与”A”等价(4)&是字符串连接符:“Hello,” & “XiaoLi” “Hello, XiaoLi”&左右侧必须各空一格。(5)+也可以做字符串连接符:字符串1 + 字符串2以上使用格式是“+”做连接符的最好写法。否则,要记很多规则。(6)&总是将不
12、是字符串的对象变成字符串后连接。(7)+的某一个运算对象若为数值型(或可以转换成数值型True等),而另一个对象即使是数字字符串,会被转换成数值,进行加法运算。但若是不能转成合法数值的字符串,则报错!*标签控件(Lable)一般与文本框等控件合用,专门用来标识说明。(1)Name属性默认为Lable1、Lable2(2)Caption属性用来标识说明。五、用选择语句的嵌套完成多分支结构的描述 x = Text1注意嵌套时,外层一定要完整地包住内层。判断闰年 Dim y As Integer Dim flag As Boolean输入年份: If y Mod 4 = 0 Then If y Mod 100 = 0 Then If y Mod 400 = 0 Then flag = True flag = False If flag = True Then Print y;是闰年不是闰年
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1