-1VFP第2部分(表达式函数)省名师优质课赛课获奖课件市赛课一等奖课件_第1页
-1VFP第2部分(表达式函数)省名师优质课赛课获奖课件市赛课一等奖课件_第2页
-1VFP第2部分(表达式函数)省名师优质课赛课获奖课件市赛课一等奖课件_第3页
-1VFP第2部分(表达式函数)省名师优质课赛课获奖课件市赛课一等奖课件_第4页
-1VFP第2部分(表达式函数)省名师优质课赛课获奖课件市赛课一等奖课件_第5页
已阅读5页,还剩57页未读 继续免费阅读

下载本文档

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

文档简介

VisualFoxpro6.0程序设计基础第1页第二讲程序设计初步(2)关键点: 掌握表示式、函数基本使用方法第2页编写程序基本元素命令常量变量表示式函数对象表单标签文本框命令按钮……√√√第3页

表示式第4页运算符及表示式运算符是在VFP中用来进行运算符号。表示式是由数据、数据存放容器和运算符组成运算式。第5页在VFP系统中依据不一样运算符及表示式结果不一样,表示式能够分为以下五种:

1、算术表示式2、字符表示式3、日期表示式和日期时间表示式4、关系表示式5、逻辑表示式

第6页1.常见表示式

(1)算术表示式算术表示式运算结果是数值型常数。第7页算术运算符:()分组括号**或^乘方%取模(除法余数)

*、/乘、除+、-加、减尤其注意符号改变仔细体会教科书P25【例2-3】第8页(2)字符表示式字符表示式运算结果是字符型常数或逻辑型常数。第9页字符运算符:$包含运算+连接运算-连接运算

字符型常数逻辑型常数第10页串1$串2“$”运算实质上是比较两个串包含关系,其作用是比较、判断串1是否为串2子串,假如串1是串2子串,运算结果为“真”,不然为“假”。所谓子串,假如串1中全部字符均包含在串2中、且与串1中排列方式与次序完全一致,则称串1为串2子串。第11页【修改例2-4】设计并运行如图所表示表单,体会运算结果。表单分别有1个标签、3个文本框、1个命令按钮,其caption属性如图所表示。第12页“计算”命令按钮“Click”事件代码:A=alltrim(thisform.text1.value)B=thisform.text2.valuethisform.text3.value=A$B文本框默认值为字符型,alltrim()是一个函数,功效是去掉文本框中前后空格,,不删除串中间空格

第13页“+”与“-”都是字符连接运算符,都将两边字符串次序连接,但“+”是直接连接,“-”则将串1尾部全部空格移到串2尾部后再连接;

□表示空格“XXXX□□□”+“YYYY”“XXXX□□□YYYY”↓“XXXX□□□”-“YYYY”“XXXXYYYY□□□”↓第14页【例2-5】设计并运行如图2-12所表示表单,体会运算结果。表单分别有4个标签、2个命令按钮,其caption属性如图2-12所表示;2个文本框,其value属性初值均为空串。

第15页“连接(+)”命令按钮“Click”事件代码:c1=ALLTRIM(Thisform.Text1.Value)c2=ALLTRIM(Thisform.Text2.Value)thisform.label3.caption=c1+""+c2+c1“连接(-)”命令按钮“Click”事件代码:c1=ALLTRIM(Thisform.Text1.Value)c2=ALLTRIM(Thisform.Text2.Value)thisform.label4.caption=c1+""-c2+c1第16页(3)日期表示式或日期时间表示式日期和日期时间运算符分为“+”和“-”两种,其作用分别是在日期数据上增加或降低天数,在日期时间数据上增加或降低秒数。注意:日期型不能和日期型数据相加第17页格式结果及类型<日期>+<天数>日期型。指定日期若干天后日期<天数>+<日期>日期型。指定日期若干天后日期<日期>-<天数>日期型。指定日期若干天前日期<日期1>-<日期2>数值型。两个指定日期相差天数第18页<日期时间>+<秒数>日期时间型。指定日期时间若干秒后日期时间<秒数>+<日期时间>日期时间型。指定日期时间若干秒后日期时间<日期时间>-<秒数>日期时间型。指定日期时间若干秒前日期时间<日期时间1>-<日期时间2>数值型。两个指定日期时间相差秒数格式结果及类型第19页【修改例2-6】设计并运行如图所表示表单,体会运算结果。3个文本框,text1、text2能够接收日期型值。表单form1load事件代码以下:setcenturyon&&将日期年份值设置成4位显示setdatetoymd&&日期显示为年月日setmarkto"-"&&日期分隔符为“-”第20页双击“计算”命令按钮,编写该按钮“Click”事件代码。其对应事件代码为:thisform.text3.value=abs(thisform.text1.value-thisform.text2.value)abs函数格式为:ABS(<数值表示式>)。其功效是求数值型表示式绝对值。

第21页(4)关系表示式关系表示式运算结果为逻辑型常量。关系成立结果为(.T.);反之,结果为(.F.)。第22页关系运算符:<小于>大于=等于<=小于或等于>=大于或等于<>、!=、#不等于==完全等于(注:只适合用于字符型)第23页各种类型数据比较规则以下:数值型和货币型数据依据其代数值大小进行比较。日期型和日期时间型数据进行比较时,越新日期或时间越大。逻辑型数据比较时,.T.比.F.大。第24页字符型数据(字符串)比较P32〖温馨提醒〗当字符串比较时,可用命令SETEXACTON/OFF来设置“=”是否为准确比较。在非准确比较(setexactoff默认状态)时,在关系表示式格式中,只要后一个表示式是前一个表示式前缀,其结果便为真。例:”ABCDE”=“A”“ABCDE”=“AB”“ABCDE”=“ABC”“ABCDE”=“ABCD”“ABCDE”=“ABCDE”.T.例:”A”=“ABCDE”“AB”=“ABCDE”“ABC”=“ABCDE”“ABCD”=“ABCDE”

.F.第25页【例2-7】设计并运行以下如图2-16所表示表单,体会运算结果。第26页(5)逻辑表示式逻辑表示式运算结果仍是逻辑型常量。第27页逻辑运算符:

!、NOT、.NOT.逻辑非OR、.OR.逻辑或AND、.AND.逻辑与该运算符只有一个操作对象第28页逻辑运算真值表ABA.AND.BA.OR.B.NOT.A.T..T..T..T..F..T..F..F..T..F..F..T..F..T..T..F..F..F..F..T.第29页【例2-8】设计并运行以下如图2-18所表示表单,体会运算结果。“计算”命令按钮“Click”事件代码为:ifthisform.text1.value>=60andthisform.text2.value>=60

thisform.label3.caption="该同学计算机等级考试成绩为:经过"else

thisform.label3.caption="该同学计算机等级考试成绩为:不经过"endif表示式值为真表示经过,表示式值为假表示不经过第30页

函数第31页函数含有特定功效,分为系统函数和自定义函数两类。

函数含有函数名、参数和函数值三个要素,有函数缺省参数。函数调用普通形式为:函数名([参数表])第32页一、数值处理函数1)取整函数INT(<数值表示式>)格式:无条件去掉小数部分,不进行四舍五入第33页2)求余数函数格式:MOD(<数值表示式1>,<数值表示式2>)比如:MOD(38,5),MOD(38,-5),MOD(-38,5),MOD(-38,-5)38%5,38%-5,-38%5,-38%-5函数值与<数值表示式2>同号38-540-8-2-385-40-82-38-5-357-33-22-33-22-3第34页【例】将一个3位整数X百位数字和个位数字取出来。X百位数字:X1=INT(X/100)X个位数字:X2=MOD(X,10)

仔细体会教科书P35【例2-10】第35页【例2-10】设计一表单,要求能输入一个3位数,并逆序显示(如输入756,则显示657)。表单设计界面如图2-22所表示,运行结果如图2-23所表示。

①设计如图2-22所表示表单,文本框text1value属性初值为0。②命令按钮“逆序显示”“click”事件代码以下:x=thisform.text1.valuex1=INT(x/100)x2=INT(MOD(x,100)/10)x3=x%10y=x1+10*x2+100*x3thisform.label2.caption="结果为:"+STR(y,3)第36页3)四舍五入函数

格式:ROUND(<数值表示式1>,<数值表示式2>)【例】ROUND()函数使用。x=486.735ROUND(x,4-2),ROUND(x,1),ROUND(x,0),ROUND(x,-1),ROUND(X,-2)486.735位置:-2-10123

对<数值表示式2>+1位四舍五入486.74486.7487490500第37页5)随机函数

格式:

RAND()6)π函数

格式:

PI()4)求平方根函数

格式:

SQRT(<数值表示式>

)产生0-1之间随机数圆面积S=PI()*R*R比如:INT(RAND()*100)(0,100)整数第38页二、

字符串处理函数1)求字符串长度函数LEN(<字符串表示式>)格式:2)生成空格函数SPACE(<数值型表示式>)格式:【例】LEN(SPACE(8)-SPACE(3))11第39页3)删除字符串前后空格函数[R]TRIM(<字符串表示式>)LTRIM(<字符串表示式>)ALLTRIM(<字符串表示式>)格式:删除后面空格删除前面空格删除前后空格第40页4)求子串位置函数格式:AT(<字符串表示式1>,<字符串表示式2>[,<数值表示式>])第41页5)取子串函数格式:LEFT(<字符串表示式>,<数值表示式>)RIGHT(<字符串表示式>,<数值表示式>)SUBSTR(<字符串表示式>,<起始位置>[,<数值表示式>])第42页【例2-11】设计并运行如图2-24所表示表单,体会表单运行结果。表单分别有4个标签、1个命令按钮,其caption属性如图2-24所表示;3个文本框。其功效是能在文本框text1中输入一字符串,依据文本框text2和text3中输入数值,取出子串,运行结果如图2-25所表示。“取子串”命令按钮“Click”事件代码为:C=alltrim(thisform.text1.value)N1=thisform.text2.valueN2=thisform.text3.valuethisform.label4.caption=substr(c,n1,n2)第43页

6)宏替换函数

格式:&<字符型内存变量>[.]分界符【修改例2-12】表单界面如图2-26所表示,体会运算结果。

第44页命令按钮“计算”“click”事件代码以下:

x1=thisform.text1.valuex2=thisform.text3.valuefh=alltrim(thisform.text2.value)y=x1&fh.x2

thisform.text4.value=y第45页三、

日期时间函数

1)系统日期和系统时间函数

格式:DATE()TIME()DATETIME()字符型第46页

2)求年份、月份和天数函数

格式:YEAR(<日期表示式>|<日期时间表示式>)MONTH(<日期表示式>|<日期时间表示式>)DAY(<日期表示式>|<日期时间表示式>)返回值4位第47页四、数据类型转换函数

1)字符串转换为数值函数

格式:VAL(<数字字符串>)【例】VAL()函数使用。VAL("X12.8"),VAL("-35.875"),VAL("3A.79")VAL(”32”+”18”)0.00-35.883.003218.00VAL(”32+18”)32.00第48页

2)数值转换成字符串函数

格式:STR(<数值型表示式>[,<长度>,[,<小数位数>]])【例】STR()函数使用。P=-348.387STR(P,9,2)STR(P,6,2)STR(P,3)STR(P,6)STR(P)STR(P,10,4)□□-348.39□表示空格-348.4***□□

-348□□□□□□-348-348.3870第49页【例】修改【例1-1】设计如图表单,圆面积用标签输出。【例】命令按钮“计算圆面积”“click”事件代码以下:R=thisform.text1.valueS=pi()*r*rthisform.label3.caption=alltrim(str(s,8,1))只接收字符类型标签除了能够显示说明文本,还能够用来输出结果第50页

3)字符与ASCII之间转换函数

格式:ASC(<字符型表示式>)CHR(<数值型表示式>)【例2-15】如图2-32所表示为表单设计界面,运行该表单,在文本框Text1中输入一字符R,单击“转换”命令按钮后,标签label2位置将显示什么?“转换”命令按钮CLICK事件代码:x=thisform.text1.valuey=CHR(ASC(x)+1)thisform.label2.caption=y第51页

4)日期或日期时间与字符串转换函数

格式:CTOD(<字符型表示式>)

DTOC(<日期表示式>|<日期时间表示式>[,1])第52页五、测试函数1)条件测试函数

格式:IIF(<逻辑型表示式>,<表示式1>,<表示式2>)

thisform.label1.caption=iif(thisform.text1.value>10,"hello","你好")第53页thisform.label1.caption=iif(rand()>0.5,"YES","NO")【例】在标签label1中随机显示“YES”和“NO”。第54页2)数据类型测试函数

格式:VARTYPE(<表示式>)

返回字母数据类型返回字母数据类型C字符型或备注型G通用型N数值型、整型、浮点型或双精度型D日期型Y货币型T日期时间型L逻辑型XNull值O对象型U未定义第55页六、系统对话框函数格式:MESSAGEBOX(<字符串>[,<对话框类型>[,<对话框标题字符串>]])函数名不能省略第56页对话框类型及含义按钮类型值对话框按钮图标类型值图标默认按钮类型值默认按钮012345“确定”按钮“确定”和“取消”按钮“终止”、“重试”和“忽略”按钮“是”、“否”和“取消”按钮“是”和“否”按钮“重试”和“取消”按钮16324864“终止”图标“问号”

温馨提示

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

最新文档

评论

0/150

提交评论