这些题目涉及的是Visual FoxPro(VFP)的基本概念和操作,包括日期时间处理、字符串操作、数据类型、表达式计算以及内置函数的使用。以下是针对每个问题的详细解释:
1. 该题考察日期格式的显示。在VFP中,`{^2004-6-27}`表示一个日期常量,但默认格式可能因系统设置而异。选项A显示的是美国日期格式(MM/DD/YYYY),符合VFP的默认格式。
2. `SET EXACT OFF`命令关闭了精确匹配,这意味着比较时不区分大小写。因此,`?‖白云蓝天‖=‖白云 ―`会返回真,因为即使空格不同,字符串内容被视为相等。
3. `SET MARK TO ";"`设置标记符为分号,然后显示两个日期,中间会用分号隔开。所以,显示的结果应该是日期后面跟分号,符合选项C的格式。
4. 这个问题涉及到数组的特性。VFP中的数组元素可以是不同类型的,因此选项A错误。
5. `X=4*5`将X赋值为20,`?X`会在屏幕上显示这个值,即20,所以答案是D。
6. 在VFP中,要在屏幕上显示文本,需要使用问号(?)命令,且字符串需要用单引号包围。所以,选项C是正确的命令形式。
7. 表达式计算涉及日期函数和字符串操作。首先提取2004年中的2,然后加上当前年份(假设是2004年)的最后两位,再加上13,得到的结果是418。
8. `8E+9`是科学计数法表示的数值常量。
9. `{^2002-06-29}+DATE()`是合法的日期加法,但`{^200206-29}`不是一个有效的日期格式,因为它没有按照正确的格式(YYYY-MM-DD)表示。
10. 内存变量的赋值语句中,M是日期类型,N是逻辑类型,X是字符类型,Y是数值类型,Z是数值类型(货币类型)。
11. `?{^2004-6-3}+29`将日期增加29天,结果是2004年7月2日。
12. `SQRT(3*SQRT(9))`先计算平方根内的表达式,3乘以3的平方根是9,然后再取平方根,结果是3。
13. `ROUND(3.14159,4)`四舍五入到小数点后四位,结果是3.1416。
14. `TIME()`、`LEN()`、`DATE()`、`MAX()`分别返回时间、长度、日期和最大值,只有`TIME()`返回的是时间类型,其他都是数值或日期类型。
15. `AT('a','476292')`查找'a'在字符串的位置,返回0,表示未找到,不为真;`SPACE(2)`返回2个空格,也不为真;`? MAX(2 ,3)`询问最大值,为真;`BOF()`在没有打开表或记录指针在首记录之前时返回真。
16. `TIME()`、`DATETIME()`、`CTOD('06/28/02')`返回时间、时间和日期时间,而`YEAR(DATE())`返回当前年份,是数值类型。
17. `VAL(SUBS(‖ 数据库 ‖, 2))*LEN(?Visual FoxPro‘)`计算字符串"数据库"的第二个字符的ASCII值(20)乘以"Visual FoxPro"的长度19,结果是380。
18. `.NULL.`是一个逻辑值,表示空值。`ISNULL(a)`检查a是否为空值,这里是空值,所以返回`.T.`表示真。
19. `STR(X,6,2)`将X转换为6位数字,小数点后保留2位。X为负数,所以结果是`X= -46.61`。
20. 当前时间为2004年6月3日,具体时间未知,题目没有给出足够的信息来计算结果。
以上是对每个题目及其涉及知识点的详细解析。这些题目涵盖了VFP的基础语法、数据类型、日期时间处理、字符串操作、表达式计算以及内置函数的应用。