(四)表达式
1.定义:通过特定的运算符将常量、变量和函数连接起来的式子,通过运算后,表达式都会生成一个值。
2.形式:
1)单一的运算对象,如常量、变量或函数。
2)由运算符将运算对象链接起来的式子。
3.作用:
1)赋值
2)输出
4.常用表达式的类型:
1)数值表达式
定义:由算术运算符将数值型数据连接起来形成的式子。
运算符:( ) 括号
**或^ 乘方
*/和% 乘除和求余运算
+和- 加和减
这四类运算符的优先级依次降低,同类之间具有相同的优先级。
运算结果的类型:它的值仍是数值型。
注意求余运算符%的用法:它的被除数与出书都必须是整数,除数不能为0。
求余三原则表述如下:
若c=a%b 做这种题的时候先算出c=︱a︱%︱b︱的值,然后c必须与a同号。还要注意的是:若a与b同号,则当前余数就是c
若a与b异号,则当前余数结果是b+c
例如:?10%3,-10%-3,10%-3,-10%3
1 -1 -2 2
2)字符表达式
定义:由字符串运算符将字符型数据连接起来形成的式子。
运算符:
+ 表示前后两个字符串首尾连接成一个新的字符串
- 表示连接前后两个字符串,并将前字符串的尾部空格移到合并后的新字符串尾部。
这两个运算符之间不分优先级。
例如:a=”hello ”
b=”everyone!”
?a+b,a-b
hello everyone! hello everyone!
3)日期时间表达式
定义:用运算符将日期或日期时间型数据连接起来形成的式子。
运算符:也是+和-。
格式:
4)关系表达式
定义:通常也简称为简单逻辑表达式,它通过关系运算符将两个运算对象连接起来形成的式子,即表达式1 关系运算符 表达式2。
运算符:< 小于
> 大于
= 等于
<>、#或!= 不等于
<= 小于等于
>= 大于等于
== 字符串精确比较
$ 字符包含测试
注意:①==和$仅适用于字符型数据,其他运算符适用于任何类型的数据,但运算符前后的两个运算对象的数据类型必须要保持一致。
②数值型、货币型数据各自之间的比较按其数值的大小进行。
③日期型、日期时间型数据各自之间的比较,越晚日期或时间越大。
④逻辑型数据比较:.t.>.f.
⑤字串包含测试:字符表达式1 $ 字符表达式2 ,如果前者整体是后者的字串,即1包含于2,则结果为真,否则为假。
⑥字符串之间的比较原则是依次比较它们对应位置中的字符,若相同则继续比较,若不同则根据这两个字符的排序序列决定字符串的大小。
但是,根据不同的排序方式,所出的结果也是不同的。
² 排序方式设置:set collate to “排序次序名”
排序次序名可以是machine、pinyin和stroke。
Machine的原则是:空格<数字<大写字母(其中A最小)<小写字母(其中a最小);
(测asc码函数:asc(字符表达式),可测比如”A””a”的asc码为65和97)
Pinyin的原则是:排在字母表后面的字母>排在前面的字母,若字母相同则大写>小写;
Stroke的原则是:汉字的笔画谁多谁大。
² 字符串的精确比较与exact设置:
“==”只有两个字符串完全相同时,运算结果为逻辑真,否则为逻辑假。
在“=”比较两个字符串时,运算结果与set exact on/off有关:off表示只要右边字符串整体与左边字符串的前面部分内容相匹配,即可为真,否则为假;on则表示比较到两个字符串全部结束,先到短的字符串尾部加空格,使两个字符串的长度相等,然后进行比较,
运算结果的类型:逻辑型。作用是比较两个表达式的大小。
北京 | 天津 | 上海 | 江苏 | 山东 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
广东 | 河北 | 湖南 | 广西 | 河南 |
海南 | 湖北 | 四川 | 重庆 | 云南 |
贵州 | 西藏 | 新疆 | 陕西 | 山西 |
宁夏 | 甘肃 | 青海 | 辽宁 | 吉林 |
黑龙江 | 内蒙古 |