




已阅读5页,还剩63页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
VisualFoxpro6.0,程序设计基础,重庆工商大学计算机学院计算机基础教研室,第二讲程序设计初步(2),要点:掌握表达式、函数的基本用法,编写程序的基本元素:,命令常量变量表达式函数,对象,表单,标签,文本框,命令按钮,表达式,运算符及表达式,运算符是在VFP中用来进行运算的符号。表达式是由数据、数据存储容器和运算符组成的运算式。,在VFP系统中根据不同的运算符及表达式结果的不同,表达式可以分为以下五种:1、算术表达式2、字符表达式3、日期表达式和日期时间表达式4、关系表达式5、逻辑表达式,1.常见的表达式(1)算术表达式算术表达式的运算结果是数值型常数。,算术运算符:()分组括号*或乘方%取模(除法的余数)*、/乘、除+、-加、减,特别注意符号的变化,优先性由高到低,仔细体会教科书P25【例2-3】,【例】写出数学式所对应的算术表达式,该数学式子对应的VFP算术表达式为g*m1*m2/(2+r*2)或g*m1*m2/(2+r2)或g*m1*m2/(2+r*r),使用表达式可以计算某些数学式子的值,如下例题说明了表达式的一种应用方法。,例题:将如下4个数学表达式改写成符合VFP语法规则的表达式,并计算出它们的结果,设x=1,y=5,z=9,a=6,b=2。,书写规则:1、凡是分母为多项,都要加括弧。2、凡是分子有加减,都要加括弧。3、凡是省略的乘号,要补上。,(2)字符表达式字符表达式运算的结果是字符型常数或逻辑型常数。,字符运算符:+连接运算-连接运算$包含运算,字符型常数,逻辑型常数,“+”与“-”都是字符连接运算符,都将两边的字符串顺序连接,但“+”是直接连接,“-”则将串1尾部所有空格移到串2尾部后再连接;,表示空格,【例2-5】设计并运行如图2-12所示的表单,体会运算结果。表单分别有4个标签、2个命令按钮,其caption属性如图2-12所示;2个文本框,其value属性的初值均为空串。,“连接(+)”命令按钮的“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,串1$串2“$”运算实质上是比较两个串的包含关系,其作用是比较、判断串1是否为串2的子串,如果串1是串2的子串,运算结果为“真”,否则为“假”。所谓子串,如果串1中所有字符均包含在串2中、且与串1中排列方式与顺序完全一致,则称串1为串2的子串。,【修改例2-4】设计并运行如图所示的表单,体会运算结果。表单分别有1个标签、3个文本框、1个命令按钮,其caption属性如图所示。,“计算”命令按钮的“Click”事件代码:A=alltrim(thisform.text1.value)B=thisform.text2.valuethisform.text3.value=A$B,文本框默认的值为字符型,alltrim()是一个函数,功能是去掉文本框中前后空格,不删除串中间的空格。,(3)日期表达式或日期时间表达式日期和日期时间运算符分为“+”和“-”两种,其作用分别是在日期数据上增加或减少天数,在日期时间数据上增加或减少秒数。运算分三中情况:(1)D-D=N(2)D+N=D(3)D-N=D注意:如果D为日期型数据,N就为天数如果D为日期时间型数据,N就为秒数日期型不能和日期型数据相加,【修改例2-6】设计并运行如图所示的表单,体会运算结果。3个文本框,text1、text2可以接收日期型的值。表单form1的load事件代码如下:setcenturyon&将日期的年份值设置成4位显示setdatetoymd&日期的显示为年月日setmarkto-&日期分隔符为“-”,双击“计算”命令按钮,编写该按钮的“Click”事件代码。其对应的事件代码为:thisform.text3.value=abs(thisform.text1.value-thisform.text2.value),abs函数的格式为:ABS()。其功能是求数值型表达式的绝对值。,关系运算符:大于=等于=大于或等于、!=、#不等于=完全等于,(注:只适用于字符型),(4)关系表达式关系表达式的运算结果为逻辑型常量。关系成立结果为(.T.);反之,结果为(.F.)。,各种类型数据的比较规则如下:,数值型和货币型数据根据其代数值的大小进行比较。,日期型和日期时间型数据进行比较时,越新的日期或时间越大。,逻辑型数据比较时,.T.比.F.大。,字符型数据(字符串)比较,P32的温馨提示,当字符串比较时,可用命令SETEXACTON/OFF来设置“=”是否为精确比较。在非精确比较(setexactoff默认状态)时,在关系表达式的格式中,只要后一个表达式是前一个表达式的前缀,其结果便为真。,例:”ABCDE”=“A”“ABCDE”=“AB”“ABCDE”=“ABC”“ABCDE”=“ABCD”“ABCDE”=“ABCDE”,例:”A”=“ABCDE”“AB”=“ABCDE”“ABC”=“ABCDE”“ABCD”=“ABCDE”,【例】关系运算示例。?1244.3322结果?“A”“B”结果?“男”“女“结果?“ABV”“ABT”.f.结果?321结果,【例2-7】设计并运行如下如图2-16所示的表单,体会运算结果。,(5)逻辑表达式逻辑表达式的运算结果仍是逻辑型常量。,逻辑运算符:!、NOT、.NOT.逻辑非OR、.OR.逻辑或AND、.AND.逻辑与,该运算符只有一个操作对象,逻辑运算真值表,【例2-8】设计并运行如下如图2-18所示的表单,体会运算结果。,“计算”命令按钮的“Click”事件代码为:ifthisform.text1.value=60andthisform.text2.value=60thisform.label3.caption=该同学的计算机等级考试成绩为:通过elsethisform.label3.caption=该同学的计算机等级考试成绩为:不通过endif,表达式值为真表示通过,表达式值为假表示不通过,总结:1、各种运算的优先级:最高级为(),-(取负)和!,算术(日期),关系,逻辑2、表达式:算术运算关系运算逻辑运算,3、表达式的输出命令格式:,?|?,练习:使用关系表达式和逻辑表达式书写各种条件,1、n是偶数n%2=02、n是奇数n%2=13、n是整数int(n)=n4、n的取值范围是(-100100)-100=nandn=1005、n是一个两位数10=nandn=99,数值型变量n,练习:使用关系表达式和逻辑表达式书写各种条件,1、n是字符型vartype(n)=c2、n保存的是同学的专业,判断是否是历史专业或计算机专业的同学。n=“历史”orn=“计算机”3、n保存的是学生性别,判断是否是男生n=“男”4、n的取值范围是(az)asc(a)=asc(n)andasc(n)=asc(z)5、n是一个两位的字符串len(n)=26、n保存的是同学的姓名,判断该同学是否是姓”李”left(n,2)=”李”,字符型变量n,练习:使用关系表达式和逻辑表达式书写各种条件,1、n保存的是同学的生日,判断是否是90后。1990904、n保存的是用户登录时间,判断用户是否是上午。登录。80.5,YES,NO),【例】在标签label1中随机显示“YES”和“NO”。,2)数据类型测试函数,格式:,VARTYPE(),六、系统对话框函数,格式:,MESSAGEBOX(,),函数名不能省略,【功能】暂停程序的执行,弹出Windows警告窗口,等待用户做出选择,返回值为数字。,对话框类型及含义,函数的返回值,【例2-16】修改【例2-10】中命令按钮“逆序显示”的“click”事件代码,要求能输入一个数,并逆序显示(如输入756,则显示657),如果输入的不是一个3位自然数,将弹出提示框,如图2-34所示。,命令按钮“逆序显示”的“click”事件代码如下:x=thisform.text1.valueifx=100andx1000andx=int(x)x1=INT(x/100)x2=INT(MOD(x,100)/10)x3=MOD(x,10)y=x1+10*x2+100*x3thisform.label2.caption=结果为:+STR(y,3)elsemessagebox(输入的不是一个3位自然数,请重新输入!)endif,判断一个数是不是3位自然数的条件,【例】用MESSAGEBOX()输出字符串对话框。MESSAGEBOX(使用三个
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年聚氨基双马来酰胺合作协议书
- 2025年烟度计合作协议书
- 会计师审计工作经历证明书(7篇)
- 农业生物技术运用与知识产权分享合同
- 软件服务业软件测试与质量管理优化方案研究
- 农业经济管理协作计划合同书
- 房地产行业销售佣金及奖金收入证明(6篇)
- 行政管理知识梳理试题及答案
- 广告代理发布合同协议书要求与
- 创业投资企业投资金额及权益证明书(8篇)
- 弘扬雷锋精神传递正能量课件
- 服装厂安全操作规程
- 2024北森图表分析题库
- 2025年水利工程师职称考试试题及答案
- 2025年四川省成都市青羊区中考数学二诊试卷
- 法院出庭授权委托书
- 2025年山东出版集团有限公司山东出版传媒股份有限公司招聘(192名)笔试参考题库附带答案详解
- 2025年四川省宜宾市第二中学校九年级二诊考试数学试题(原卷版+解析版)
- 《会计基础与实务》课件-项目五 登记会计账簿
- 2024初级注册安全工程师笔试题库答案分析
- 江西省南昌市2025年中考语文一调试卷(含答案)
评论
0/150
提交评论