|
3.4 Visual FoxPro的表达式发表时间:2020-03-05 10:52 3.4 Visual FoxPro的表达式一、认识 ·表达式即运算对象(常量、变量、函数)通过运算符号进行运算的式子。 ·不同的运算符号有不同的优先级,运算时,优先级高的运算符号先算,优先级低的运算符号后算,同等优先级的自左至右进行运算。如10+30-20/5。 ·为了让优先级低的运算符先算,应使用圆括号。注意:只能使用圆括号。 ·表达式中的所有符号应并列书写,不能像数学中那样书写。 ·单个运算对象,也认为是表达式(表达式特例)。
二、数值表达式 1、认识 对数值型、货币型数据进行运算的式子,其值为数值型或货币型。 2、运算符及优先级 **或^:乘方运算; *:乘法运算; /:除运算; %:求余运算; +:加运算; -:减运算。 例:试写出下列算式的VFP表达式。
三、字符表达式 1、认识 对字符型数据进行运算的式子,其结果仍为字符型。 2、运算符及优先级 +:将前后两个字符串进行合并,如"abc "+"def",其结果为字符串"abc def"。 -:将前后两个字符串进行合并,但将前面字符串尾部的空格挪到合并后的字符串尾部。如"abc "-"def",其结果为字符串"abcdef "。
四、日期时间表达式 1、认识 有日期时间型数据参加运算的式子,其结果类型依情况而定。 2、表达式实例 ·日期+数值 或 数值+日期 ·日期-数值 注意:不能数值-日期 ·日期-日期 ·日期时间+数值 或 数值+日期时间 ·日期时间-数值 注意:不能数值-日期时间 ·日期时间-日期时间
五、关系表达式 1、认识 对类型一致的数据进行比较的式子,如A<B,2+3>56,'春节'>'圣诞节'等。 如果比较成立,结果为逻辑值真,否则为假。 2、比较符号 ·比较符号又叫关系运算符。 ·关系运算符:(见关系运算符) 思考:关系表达式“1 < 2 < 3”的值是什么? 3、VFP中数据大小的规定 除使用$(属于)关系运算符的关系表达式外,关系表达式的运算结果和关系运算符两边数据的大小密切相关,因此,必须清楚VFP中关于数据大小的规定。 1)数值型、货币型的大小 同算术中大小。 2)日期型、日期时间型的大小 靠后的日期、时间大。 3)逻辑型的大小 真大于假。 4)字符型的大小 ·单个字符大小的规定 当设置为Machine(机器)顺序时 字符大小:空格<数字字符(’0’到’9’)<大写字母<小写字母; 汉字大小:常用汉字以拼音顺序排大小,如’李’小于’张’。 当设置为PinYin(拼音)顺序时 字符大小:空格<数字字符(’0’到’9’) <’a’<’A’<’b’<’B’……; 汉字大小:以拼音顺序排大小,如’李’小于’张’。 当设置为Stroke(笔画)顺序时 字符大小:空格<数字字符(’0’到’9’)<’a’<’A’<’b’<’B’……; 汉字大小:以书写笔画多少确定大小,笔画多的大。 三种顺序的设置 方法一:“选项”对话框中设置。 方法二:用命令设置: setcollate to "Machine" setcollate to "PinYin" setcollate to "Stroke" ·字符串大小的规定 基本规则 自左至右,逐个字符进行比较,直到某个字符能分辨出大小为止。 非精确比较方式(默认方式) 在前面字符没能区分出大小的情况下,两个字符串的比较以右边字符串的结束而结束。 精确比较方式 在前面字符没能区分出大小的情况下,两个字符串的比较以最长字符串的结束而结束。 说明:关系运算符“=”按当前的比较方式进行比较,“==”始终以精确方式进行比较。 比较方式的设置 方法一:“选项”对话框中进行。 方法二:命令 SETEXACT ON &&设置为精确比较方式 SETEXACT OFF &&设置为非精确比较方式
六、逻辑表达式 1、认识 对逻辑型数据进行运算的式子,结果为逻辑型。 2、运算符及优先级 .not.或not或!:非运算; .and.或and:与运算; .or.或or:或运算。 思考:逻辑表达式“not .f. or .t. and .f.”的值? 3、逻辑表达式、关系表达式的意义 VFP中,使用关系表达式来表示单个条件,逻辑表达式表示组合条件。组合条件中,如果两个条件要求同时满足,两个条件之间使用“与”运算;如果两个条件只要求满足其中一个,两个条件之间使用“或”运算;如果要表示出某个条件的反条件,对该条件进行“非”运算。 当逻辑表达式、关系表达式的值为真时,所表示的条件成立;当逻辑表达式、关系表达式的值为假时,所表示的条件不成立。 例:试用关系表达式或逻辑表达式表示如下条件。 1)A大于5 2)A不大于5 3)A大于5且B小于10 4)A大于5或B小于10 5)A在5和20之间 6)A不在5和20之间 4、说明 一个逻辑表达式,它的运算对象往往是关系表达式,而关系表达式的运算对象又往往是数值表达式、字符表达式或日期时间表达式。也就是说,不同类型的运算符可能会出现在同一个表达式中,这时,运算符的优先顺序是:先进行数值运算、字符运算和日期时间运算,然后进行关系运算,最后进行逻辑运算。
文章分类:
教学资料
|
扫描查看手机版网站