资源描述:
《常用语句与函数2》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、2.2.3常用语句与函数第二课时函数四种语句:赋值语句Print语句注释语句结束语句五种函数:与用户交互的函数数学函数字符串函数日期函数常用转换函数请同学们观察如下程序,我们想取得4:59:36AM和4:59:39AM之间的时间差:PrivateSubCommand1_Click()a=#4:59:36AM#b=#4:59:39AM#c=b-aprintcEndSub输出结果为3.47222222222277E-05,比较晦涩难懂PrivateSubCommand1_Click()a=#4:59:36AM#b=#4:59:39AM#c=DateDi
2、ff("s",a,b)PrintcEndSub输出结果3[总结]◆通过以上例子,我们知道,datediff实现了一定的功能。具体的功能为:算出2个时间之间的差值,用秒来表示。程序段中没有任何对datediff的说明,显然,它是程序默认接受的。我们常常利用VB提供的内部函数来解决问题。VB中函数的概念与数学中函数的概念没本质的区别。内部函数称为标准函数,它们是VB系统为了实现常用功能而提供的内部函数。函数可以有零个或多个输入,一般都有一个确定的返回值。一、 用户交互函数1、inputbox()函数PrivateSubCommand1_Click()D
3、imrAsInteger,cAsSingler=Val(Text1.Text)c=2*3.14*rText2.Text=cEndSubPrivateSubCommand1_Click()DimrAsInteger,cAsSingler=Val(InputBox("请输入半径","输入框","3"))c=2*3.14*rText2.Text=cEndSub通过对比,得出InputBox("请输入半径","输入框","3")实现了text1的功能,而且,是以弹出窗口的形式,并有默认值。r=Val(Text1.Text)r=Val(InputBox("请
4、输入半径","输入框","3"))例如:r=InputBox("请输入半径","输入框","3")vb通过inputbox()函数实现人机交互[格式]inputbox(提示[,标题][,默认值][,x坐标][,y坐标])2、msgbox()函数语法格式:MsgBox(提示[,按钮][标题])按钮参数:这里的按钮参数一般用VB内部符号常量;vbOkOnly(是)vbOkCancel(确定、退出)vbYesNo(是、否)vbYesNoCancel(是、否、退出)PrivateSubCommand1_Click()a=MsgBox("你好吗",vbYes
5、No,"确定吧")PrintaEndSub二、数学函数:在具体编程过程中,各类数学函数会被使用,数学函数用于数学计算,包括三角函数、求平方根函数、求绝对值函数、对数函数、指数函数等。它们与相应的数学定义相同。PrivateSubCommand1_Click()a=-4Printabs(a)a=4PrintSqr(a)a=30'30度PrintSin(a*3.14/180)'三角函数内必须为弧度PrintCos(a*3.14/180)PrintTan(a*3.14/180)PrintAtn(值)a=2PrintExp(a)a=10PrintLog(a
6、)a=99.8PrintInt(a)‘int为取整作用a=99.2PrintInt(a)a=99.5printcint(a)EndSubPrivateSubCommand1_Click()a=Rnd()PrintaEndSubPrivateSubCommand1_Click()Randomizea=Rnd()PrintaEndSubrandomize作用:初始化随机数生成器,可以达到每次产生不同随机数的目的。[探讨题1]请在屏幕上打印出[5,6)之间的随机数PrivateSubCommand1_Click()Randomizea=Rnd()+5Pr
7、intaEndSub[探讨题2]请在屏幕上打印出[5,11)之间的随机数PrivateSubCommand1_Click()Randomizea=Rnd*6+5PrintaEndSub[探讨3]请在屏幕上打印出[b,c)之间的随机数,并请同学熟记PrivateSubCommand1_Click()Randomizea=Rnd*(c-b)+bPrintaEndSub三、字符串函数:在“打字测试软件”程序中,计算输入字符数时就使用了Len函数。intWordCount=Len(txtInput.Text)其含义是求出文本框中的字符数并赋给变量intWo
8、rdCount。PrivateSubCommand1_Click()a="2008奥运在北京举办"PrintLen(a)P