实验05 Visual FoxPro表达式.doc_第1页
实验05 Visual FoxPro表达式.doc_第2页
实验05 Visual FoxPro表达式.doc_第3页
实验05 Visual FoxPro表达式.doc_第4页
实验05 Visual FoxPro表达式.doc_第5页
全文预览已结束

下载本文档

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

文档简介

实验五 表达式一、实验目的熟悉Visual FoxPro所使用的运算符及其运算的优先级。学习正确描述Visual FoxPro各类表达式二、实验指导1、相关知识表达式:由常量、变量和函数通过特定的运算符和小括号连接起来的式子。在Visual FoxPro的编程中,表达式无处不在。在这部分中重点和难点都是如何准确使用条件表达式(比较表达式和逻辑表达式)。(1)运算符与表达式Visual FoxPro使用的运算符有:算术运算符、字符运算符、日期运算符、比较运算符、逻辑运算符等。相应的表达式有算术表达式、字符表达式、日期表达式、比较表达式、逻辑表达式等。算术运算符与表达式: +(加) -(减) *(乘) /(除) %(取余) *或(乘方) +(正号)-(负号)其优先级与日常算术一致。单目运算(正、负号)最高,乘方余次之;再下级为乘、除、取余;加、减运算最低。描述算术表达式时要正确地把代数式改写为Visual FoxPro算术表达式。例如: -2-3+e2.5-()的Visual FoxPro算术表达式为:-2*(-3)+exp(2.5)-(3/(4/9)sin30+ lg20 的算术表达式为:sin(30*3.14/180) + log10(20)的算术表达式为:( -B + SQRT( B*B - 4*A*C ) )/( 2*A )。在这个表达式中,常犯的错误就是把“4*A*C”写成“4AC”;再就是把“(2*A)”错写成“2*A”或“2A”;再就是漏写分子的小括号。注意运算的优先级:例如271/3的值应为 9;而 27(1/3)的值应为3。说明:a%b 与函数MOD(a,b)的功能一致。对于 A*B运算中,若A0 ;则B必须为整数。例如:-2*3或者-2*3.0都是正确的;而-2*3.1就是错误的。字符运算符与表达式:+(字符串完全联接运算)-(实现两字符串的联接,但把前字符串的空格移到新字符串的尾部)例如:S1 = ABC ,S2 = EDF;则S1+S2的值为:ABC EDF。而S1-S2的值为:ABCEDF X1 = 1+2,X2 = 345,则 X1+X2和X1-X2的值皆为:1+2345日期运算符与表达式:注意运算对象与运算结果。+、+ 、-结果为日期型。注意上式中的整数表示天数。- 两个日期型之间相差的天数。+、+ 、-结果为日期时间型。注意上式中的整数表示秒数。- 两个日期型之间的相差秒数。比较运算符与比较表达式(也称为关系表达式):(大于)、=(大于等于)、=(等于)、=(小于等于)、(小于)、或#或!=(不等)、$(子串包含测试) 与 =(字符精确比较)仅适用字符型数据。注意:比较运算符的运算结果是逻辑值(即:.T.或.F.)。要求:运算符两端的数据类型要兼容(即是可比较的)。例如:123B-10。这是错误的。数值比较和日常使用一致。字符比较与系统设置有关,选择菜单“工具”/“选项”,如图单击“数据”卡。设置精确比较设置排序次序图 5.1 影响字符串比较的两个设置字串比较,是Visual FoxPro很重要的一部分。执行比较运算时,系统是把两边字串从左到右次序逐个比较。下面介绍两个设置对字符串的比较的影响。设置排序次序设置“Machine”时,西文字符按ASCII码值大小进行比较: 019ABZabz汉字按汉字机内码比较。设置“PinYin”时,西文字符大小比较遵循: 019aAbBzZ汉字按拼音次序比较。设置“Stroke”时,西文字符大小比较遵循: 019aAbBzT、 S=T 的值分别为 .T.、.T.、.T.、.F.。(2)设 S 一个字符变量,那么与表达式 A $ S 等价的式子有:AT( A,S ) 0、AT( A,S ) 0(3)设 S 一个字符变量,当EXACT设置为OFF时,那么与表达式 S =A 等价的式子有:AT( A,S ) = 1、LEFT( S,1 ) = A、SUBSTR( S,1,1 ) = A(4)设 A、B、C都是数值型变量,那么条件 ABC描述成Visual FoxPro表达式应为:AB AND BC(5)设执行如下命令系列:C = 1A1 = 100? A&C & 该项命令输出结果应为 100(6)设执行如下命令系列:X = 1 + 2Y = &X*12? Y & 该项命令输出结果应为 25(7)设执行如下命令系列:X = 1 + 2Y = &X = 3Z = IIF(Y,1,2)? Z & 该项命令输出结果应为 1(8)设X = .T. 、Y = .F.、Z = .F.;那么表达式:X AND Y OR NOT Z、NOT X AND Y OR Z、X OR Y AND NOT Z、X AND Y OR NOT Z的值分别为:.T.、.F.、.T.、.T.。(9)给平面坐标系上的点(X,Y)赋一个值,若该点与原点的距离小于等于10,变量H的值为100,否则H的值为0 。假设X为5,Y为6。读者也可以给X、Y赋另一组值。X = 5Y = 6D = SQRT( X*X + Y*Y )H = IIF( D= B + D OR NOT .T.A = B AND B= D OR C A N

温馨提示

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

评论

0/150

提交评论