1、2.2.4常用语句与函数,Private Sub Command1_Click() a = InputBox(“输入人数“, “请输入本班人数“) If a 50 Then b = MsgBox(“你输入的数值超出范围(1-50)“, vbOKCancel, “错误提示“) Else Randomize c = Int(Rnd * a) + 1) Print “中奖编号为:“; c End If End Sub,运行 “幸运抽奖”小程序,四种语句 1、赋值语句 2、print 语句 3、注释语句 4、结束语句,五种函数 1、与用户交互函数 2、数学函数 3、字符串函数 4、日期函数 5、常用转
2、换函数,一、常用语句,1、赋值语句,VB中的赋值语句用“=”来实现 如:a=1 b=a 格式:变量 = 表达式 或 对象.属性= 表达式 功能:将右边表达式的值赋给左边的变量或属性 说明: 1、这里的“=”是赋值符号,是将表达式的值计算出来后再赋予该变量。 2、“=”左边只能是变量,右边可以是常量、变量或表达式。 3、变量被赋值前的值常称为”初始值“。VB中字符串变量的初始值为空串;数值型变量的初始值为0;逻辑型变量的初始值为False,如:n=n + 1C=2*3.14*rlblshow.caption=time(),1、请分析下面c的值:Private Sub Command1_Click
3、() Dim a as integer Dim b as integer Dim c as integer a = 5 b =4c = a + b Print cEnd Sub,2、题1代码中若去掉a=5语句,求C的值 4,3、下列给出的赋值语句中正确的是(C)。A、4 = M B、#NAME? C、B=A3 D、x + y = 4,应用举例,9,格式:对象名.print 表达式列表 功能:在指定的对象上输出文本、图形等相应的内容。 说明:1、对象可以是窗体、图片框等,若不指定对象名,默认在当前窗体中输出。2、表达式列表可以是一个或多个表达式,各表达式之间用”;”或”,”隔开。3、print语
4、句行末若没有分隔符”;”或”,”则print语句执行完成后自动换行,2、print 语句,用;隔开,各个内容紧跟着 用,隔开,按分区格式输出,窗体、图片框等 如:picture1.print “hello” Print “hello”,1、请你设计一个程序 ,规范输出 a+b=3Private Sub Command1_Click() a=1:b=2 print “a+b=“;a+b End Sub 分析前一个“a+b=”是字符串,后一个a+b是表达式,输出表达式的值(变量也是输出值),上机实践,3、P28 Private Sub Form_Click() Print “北京“, “奥运“ P
5、rint “北京“; “奥运“ End Sub,2、P27 Private Sub Form_Click() Print “*“ Print “ 新北京 新奥运 “ Print “*“ End Sub,为了提高程序的可读性,通常需要在程序适当的位置加上必要的注释。 VB中注释语句的格式为: 1、在” “字符后加注释内容如:r = inputbox(“输入r:”) 输入半径r 2、用Rem注释内容。(用Rem语句注释,应将Rem语句独立成行书写,不可像” “一样直接放在其他语句后面,否则VB将提示错误)如:Rem 计算圆的周长c=2*PI *r,3、注释语句,语法格式:End 功能:强制程序结束
6、运行(效果等同于按界面上的 ),4、结束语句,上机实践: Private Sub Command1_Click() A=1 B=2 If ab then end End Sub,1、通常一条语句占一行。要在一行写多条语句,需要在每条语句之间用冒号进行分隔。 2、如果一条语句一行写不下,可用续行符(空格后面跟“_”)将语句分成多行。 3、各关键字之间,关键字与变量名、常量名之间要用空格。,其它说明,二、函数,语法格式为:InputBox(提示,标题,默认值,x坐标,y坐标)InputBox()函数的返回值是字符型数据,在对其进行数学运算前需要进行强制类型转换。,1.1用户交互函数InputBox
7、(),(1)语法格式:MsgBox(提示信息,按钮,标题) j = MsgBox(“你输入的数据格式不正确,是否继续?“, vbYesNo, “错误提示“),1.2、用户交互函数MsgBox(),vbOkOnly (是) vbOkCancel (确定、退出) vbYesNo (是、否) vbYesNoCancel(是、否、退出),(2)MsgBox()函数的返回结果为一个数值 (3) “按钮”参数一般用VB的内部符号常量,2、数学函数,在具体编程过程中,各类数学函数会被使用,数学函数用于数学运算,包括三角函数、求平方根函数、求绝对值函数、对数函数、指数函数等,它们与相应的数学定义相同。,(1)
8、三角函数中的参数应是弧度数,如数学中sin300应写为:sin(30*3.14159/180) (2)Rnd函数返回0,1)(即包括0,但不包括1)之间的一个随机双精度数,它往往和Randomize结合使用。,使用数学函数时需要注意以下几点:,例:1、产生154之间的随机整数:Int(Rnd*54)+1)2、产生5,11)之间的随机数: Rnd*6 +5,产生 b,c)之间的随机数 Rnd*(c-b) + b,4、一元二次方程ax2+bx+c=0(a0)的两个实数根如下,下列表达式正确的是( B)A、x2=-b-sqr(b2-4*a*c)/(2*a) B、x2=(-b-sqr(b2-4*a*c
9、)/(2*a) C、x1=-b+sqr(b2-4*a*c)/(2*a) D、x1=(-b+sqr(b2-4ac)/(2*a),应用举例,5、VB表达式的值。Abs(-9.9) + Int (-9.9) -0.1,3、字符串函数,在“打字测试软件”程序中,计算输入字符数时就使用了Len函数。Intwordcount=Len(txtInput.Text) 其含义是求出文本框中的字符数并赋给变量intwordcount,应用举例,假如某人身份证号码s=”370102199602190000”,如果需要根据此身份证号码求出该人的“出生年月日”,下列表达式不能实现的是(C ) A、Mid(s,7,8)
10、B、Mid(s,7,4)+Mid(s,11,2)+Mid(s,13,2) C、Left(s,14)-Left(s,6) D、Right(Left(s,14),8),6、在VB语言中常用的字符串截取函数有:,Date() 返回系统当前日期 Time() 返回系统当前时间 Day() 返回指定日期的日数 Month() 返回指定日期的月数 Year() 返回指定日期的年份数 Now() 返回当前的年-月-日 时-分-秒,4、日期函数,上机验证: Private Sub Command1_Click() a = Now() Print Year(a) Print Month(a) Print Day
11、(a) End Sub,5、常转换函数,Str( )函数和Val( )函数是一对反函数,前者将数字转化为字符串,后者将字符串转化为数字。Val( )函数从前向后截取出参数的数字部分,如前无数字,则返回0。,上机测试:P32实践,Private Sub Form_Click() Dim x As String, y As Integer Dim a As String, b As String, c As Integer x = “1“ y = 123 a = Chr(Asc(x) + 5) b = Str(Val(x) + 5) c = Val(Str(y) + “5“) Print a, b, c End Sub,