




已阅读5页,还剩21页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第二章Visual FoxPro中的数据与运算2.1 Visual FoxPro的数据类型数据是反映现实世界中客观事物属性的记录,它包括两个方面:数据内容与数据形式。数据内容就是数据的值,数据形式就是数据的存储形式和操作使用方式,也称为数据类型。VFP6系统为使用户建立和操作数据库更加方便,将系统中所有操作、处理的数据,分为几种不同数据类型: 字符型、数值型、日期型、日期时间型、逻辑型、备注型、通用型、货币型、二进制字符型和二进制备注型。常量: 常量是在命令或程序中可直接引用、具有具体值的命名数据项,其特征是在整个操作过程中它的值和表现形式保持不变。Visual FoxPro按常量取值的数据类型,将常量分为6种类型 数值型常量、浮点型常量、字符型常量、逻辑型常量、日期型常量、日期时间型常量。货币型(Currency)数据是为存储美元金额而使用的一种称为货币(Currency)的数据类型,其取值范围是:-922337203685477.5808 922337203685477.5807,默认保留4位小数,占据8字节存储空间。货币型数据用字母Y表示。数值型 数值型数据是表示数量、可以进行数值运算的数据类型。数值型数据由数字、小数点、正负号和表示乘幂的字母E组成,数值精度达16位。在Visual FoxPro系统中,按存储、表示形式与取值范围不同,数值型数据又分为四种不同类型。数值型常量 数值型N(Numeric)数据由数字、小数点、正负号和字母E组成,用字母N表示。数值型数据的取值范围是:-0.9999999999E+190.9999999999E+20,包括正负号、小数点和字母E在内,其长度(数据位数)最大20位。通常用于表示实数。如23,-103.45,1.3E-5(即1.310-5)等;数值型数据在内存中用8个字符表示。 货币型 Y(Currency)数据是为存储美元金额而使用的一种称为货币(Currency)的数据类型,用字母Y表示,其书写格与数值型常量相似,但要加上一个前置美元符号($)其取值范围是:-922337203685477.5808 922337203685477.5807,默认保留4位小数,而且系统自动将多余的小数位四舍五入,但不能使用科学科学记数法表示,如$12.0、$300 等是正确的,$1.2e3错误。货币型数据。货币型常量占据8字节存储空间。字符型 字符型 C(Character)字符常量是由任意字符、数字、汉字组成的字符序列,又称字符串。用字母C表示,其书写方法是用定界符将字符串括起来定界符由单引号、双引号”和方括号三对而且必须成对使用。例如“江苏”、 江苏 、江苏是等价的。如果字符串的内容包含了某个定界符,则该定界符不能作为定界符使用,需要使用其他的定界符。中国是正确的中国是错误的。长度(即字符个数)范围是0254个字符。日期型D(Date)数据是表示日期的数据,用字母D表示。其定界符使用一对花括号()花括号包括三部分,各部分内容之间用分隔符分隔。常用的分隔符由斜杠()、连字符(-)、西文句读(,)可使用命令 set mark to 日期分隔符 设置不同的分隔符。注:日期型数据在内存中固定占8个字节。日期型常量有严格的和传统的两种格式:注:花括号的第一个字符必须是托字符()年份必须4位如(2008)年月日的次序不能颠倒不能省略Set strictdate to 012/31/08传统的日期格式Set strictdate to 1或t 22008-12-31严格的日期格式(2)设置日期显示格式 用户可以调整、设置日期值和时间值的显示输出格式。既可以用命令方式设置,也可以用菜单方式设置。 命令格式: SET DATE TO AMERICAN | ANSI | BRITISH | FRENCH | GERMAN | ITLIAN | JAPAN | USA | MDY | DMY | YMD | SHORT | LONG设 置 值 日 期 格 式 设 置 值 日 期 格 式 AMERICAN mm/dd/yy USAmm-dd-yyANSIyy.mm.ddMDY mm/dd/yyBRITISH / FRENCH dd/mm/yyDMY dd/mm/yy GERMAN dd.mm.yy YMD yy/mm/dd ITALIAN dd-mm-yySHORTWindows短日期格式JAPAN yy/mm/ddLONGWindows长日期格式日期时间型 日期时间型T(Date Times)数据是表示日期和时间的数据,用字母T表示。日期时间的默认格式是mm/dd/yyyy hh:mm:ss,其中mm、dd、yyyy的意义与日期型相同,而hh表示小时,mm表示分钟,ss表示秒数。日期时间型数据也是采用固定长度8位,取值范围是:日期为01/01/000112/31/9999,时间为00:00:0023:59:59。如10/01/2002 10:30:30表示2002年10月1日10时30分30秒这一日期时间数据逻辑型 逻辑型L(Logic)数据是描述客观事物真假的数据类型,表示逻辑判断的结果,用字母L表示。逻辑型数据只有真(.t.或.y.)和假(.f.或.n.)两种,固定长度1位。为区别其他数据类型,一般需在表示逻辑值的字母t、y、f、n的前后加圆点符“.”。备注型 备注型(Memo)数据是表示、存放较多字符的数据类型。可以把它看成是字符型数据的特殊形式,用字母M表示。 备注型数据没有数据长度限制,仅受限于磁盘空间。它只用于表中字段类型的定义,字段长度固定为4位,实际数据存放在与表文件同名的备注文件(.FPT)中,长度根据数据的内容而定。通用型 通用型(General)数据是存储OLE(对象链接嵌入)对象的数据类型,用字母G表示。通用型数据中的OLE对象可以是电子表格、文档、图形图片等。它只用于表中字段类型的定义。通用型数据字段长度固定为4位,实际数据长度仅受限于磁盘空间。货币型 2.2 Visual FoxPro变量的定义与操作 变量是在操作过程中可以改变其取值或数据类型的数据项。在Visual FoxPro系统中变量分为字段变量、内存变量、数组变量和系统变量4类。此外,作为面向对象的程序语言,Visual FoxPro在进行面向对象的程序设计中引入了对象的概念,对象实质上也是一类变量。 确定一个变量,需要确定其三个要素:变量名、数据类型和变量值。在VFP环节下对变量的定义是通过赋值的方式实现的,变量的数据类型取决于变量值的数据类型,变量的类型可以改变,也就是说可以把不同类型的数据赋给同一变量。命名约定 使用字母,下划线和数字命名。一般建议不采用汉字命名; 命名以字母或下划线开头;除自由表中字段名、索引的TAG标识名最多只能10个字符外,其他的命名可使用1128个字符; 避免使用 Visual FoxPro的保留字; 文件名的命名应遵循操作系统的约定。变量的赋值:格式一:变量名=表达式 &只能给一个变量赋值格式二: store 表达式 to 变量名表 &给多个变量赋值例如:N1=20Store 20 to a,b,c &变量a、b、c 的值都为20 不可使用数学表达式:a=b=c=20 错误!表达式在Visual FoxPro系统中,表达式是由常量、变量、函数及其他数据容器单独或与运算符组成的有意义的运算式子。字段变量 表由若干记录构成,每个记录都包含若干个数量相同的字段,同一字段在不同记录中分别对应不同的字段值,因此,字段也是变量。注:当出现内存变量与字段变量同名时则系统默认为字段字段变量,如果要访问内存变量,必须在变量名前加上M.(或M-)表达式的显示格式1: ? & 在光标所在的下一行输出格式2:? &在光标所在位置直接输出显示内存变量List memory like to print to fileDisplay memory like to print to file 格式1自动滚屏格式2分屏显示Like 短语只显示与通配符相匹配的内存变量。通配符*表示任意多个字符,?表示位置相同的任一字符。变量的保存 Visual FoxPro提供相应命令,可用文件形式将某些变量保存起来,以便重复使用。 命令格式: SAVE TO ALL LIKE | ALL EXCEPT 命令功能:将指定变量的信息保存到指定的变量文件(*.MEM)中。 ALL LIKE :只保存符合通配符条件的所有变量; ALL EXCEPT :只保存不符合通配符条件的所有变量。(3)变量的恢复 需要保存在文件中的变量信息时,必须先恢复到内存后方可使用。 命令格式: RESTORE FROM ADDITIVE 命令功能:将指定变量文件(*.MEM)中变量信息恢复到内存中。 ADDITIVE:省略此项,清除内存所有变量后再恢复文件中变量的信息;加选此项,将变量文件中的变量信息追加到内存现有变量信息中。 (4)变量的清除 Visual FoxPro系统对定义内存变量的数量是有限制的,应及时清理,尽量减少内存的占用,定义其他变量。 命令格式:格式1 clear memory &清除所有内存变量格式2 release 内存变量名表 &清除指定的内存变量格式3 release all extended &清除所有内存变量如果在程序中应加上extended短语否则不能清除全局变量。 RELEASE ALL LIKE | EXCEPT like短语表示清除与通配符相匹配的内存变量,选用except 表示清除与通配符不相匹配的内存变量。数组是内存中一个连续的存储存储区域,它由一系列元素组成,每个元素可以通过数组名及相应的下标来访问。每个元素相当于一个简单的内存变量。与单个内存变量不同数组必须通过dimension 或declare数组必须先定义后使用。dimension 数组名(, )declare 数组名(, )以上两种格式均相同。注:数组定义后,系统自动给每个元素赋以逻辑值假.f.。Dimension stu(5)List memory like stu*数组的下标是从1开始的。在赋值语句中如果使用数组名表示为数组的给个元素赋以相同的值。Store 50 to stuList memory like stu* 数组的元素可以赋不同的初始值。Stu(1)=张华Stu(2)=10000Stu(3)=1988-06-10 可以用一维数组的形式访问二维数组。Dimension stt(2,3)?stt(1), stt(2), stt(3) ,stt(4), stt(5), stt(6)系统变量 系统变量是Visual FoxPro系统特有的内存变量,它由Visual FoxPro系统定义、维护。系统变量有很多,其变量名均以下划线“_”开始,因此在定义内存变量和数组变量名时,不要以下划线开始,以免与系统变量名冲突。2.3 Visual FoxPro的函数 Visual FoxPro系统中,函数是一段程序代码,用来进行一些特定的运算或操作,支持和完善命令的功能,帮助用户完成各种操作与管理。Visual FoxPro系统有数百种不同函数,按函数提供方式,可分为系统(标准)函数和用户自定义函函数,按函数运算、处理对象和结果的数据类型,可分为数值型函数、字符型函数、逻辑型函数、日期时间型函数、数据转换函数等,按函数的功能和特点,可分为数据处理函数、数据库操作函数、文件管理函数、键盘和鼠标处理函数、输出函数、窗口界面操作函数、程序设计函数、数据库环境函数、网络操作函数、系统信息函数动态数据操作函数等。2.3.1 数值函数数值函数用于数值运算,其自变量与函数都是数值型数据。函数名功 能实 例函数类型BAS(数值表达式)返回指定的数值表达式的绝对值?abs(10),abs(0),abs(-10),abs(-2000) 10 0 10 2000数值SIGN(数值表达式)返回指定的数值表达式的符号。当表达式的值为正、负、零时,函数值分别为1、0、-1?sign(10),sign(0),sign(-10),sign(-2000) 1 0 -1 -1数值SQRT(数值表达式)返回指定表达式的平方根,自变量的表达式的值不能为负数。?sqrt(100),sart(64), sqrt(sqrt(abs(-81) 10 8 3数值PI()返回圆周率。该函数没有自变量。?PI ()3.14数值INT(数值表达式)返回指定数值表达式的整数部分。?int(19.999),int(19.1111),int(19.555) 19 19 19数值CEILING(数值表达式)返回大于或等于指定数值表达式的最小整数。?ceiling(12.25),ceiling(-12.75)13 -12数值Floor(数值表达式)返回小于或等于指定数值表达式的最大整数。?floor(12.25) ,floor(-12.25) 12 -13数值Round(数值表达式1,数值表达式1)返回指定表达式四舍五入的结果。X=345.253789?round(x,2),round(x,3),round(x,4) 345.25 345.234 345.2538数值mod(数值表达式1,数值表达式2)取余数函数。余数的符号应与除数的符号相同。?mod(22,5),mod(22,-5),mod(-22,5) 5 -3 3数值Max(数值表达式1,数值表达式2)计算个表达式的值并返回其中的最大值。各表达式的类型必须相同。?max(20,30,80),max(飞机,大炮,轮船)80 轮船数值Min(数值表达式1,数值表达式)计算个表达式的值并返回其中的最小值。?max(123,2,87)123数值字符函数 字符函数是处理字符型数据的函数,其自变量或函数值中至少有一个是字符型数据。函数中涉及的字符型数据项函数名功 能实 例函数类型Len(字符表达式)返回指定字符表达式的长度。字母或符号占一个字节,汉字占两个字节。X=中国good?len(x)8数值LOWER(字符表达式)将表达式的大写字母转换为小写字母,其它字符不变。S1=good BYE?lower(s1)good bye字符UPPER(字符表达式)将表达式的小写字母转换为大写字母,其它字符不变。?upper(s1)GOOD BYE字符Space(数值表达式)返回指定空格组成的字符串。S1= S2=space(6)List memory like s*字符TRIM(字符表达式)返回字符表达式值去掉尾部空格后形成的字符串。S1= test S2=trim(s1)?len(s1), len(s2) 7 4List memory like s*字符LTRIM(字符表达式)返回字符表达式值去掉前导空格后形成的字符串。t1= testt2=ltrim(s3)?len(t1),len(t2) 8 4List memory like t*字符ALLTRIM(字符表达式)返回指定字符串去掉前导和尾部空格后形成的字符串。K1= test K2=alltrim(k1)?len(k1),len(k2)10 4List memory like k*字符LEFT(字符表达式,长度)从指定表达式的左端取指定长度的子串作为函数值。S1=中国江苏徐州?left(s1,4),left(s1,8)中国 中国江苏字符RIGHT(字符表达式,长度)从指定表达式的右端取指定长度的子串作为函数值。?right(s1,4),right(s1,8)徐州 江苏徐州字符SUBSTR(字符表达式,起始位置,长度)从指定表达式的指定位置开始取指定长度子串作为函数值。?substr(s1,5,4)江苏OCCURS(串1,串2)返回第一个字符串在第二个字符串中出现的次数,函数值为数值型S1=abS2=12ab34ab56aB78ab?occurs(s1,s2) 4数值AT(串1,串2,N) 若字串1是串2的子串,则返回串1首字符在串2的位置,否则返回值为零,n表示次数默认为1?at(s1,s2),?at(s1,s2,2),at(s1,3)3 7 15数值ATC(串1,串2,N)用法同at()函数但不区分大小写。?atc(s1,s2),atc(s1,s2,3) 3 11数值STUFF(串1,起始位置,长度,串2)用串2替换串1中开始指定长度的字符。S1=计算机信息技术S2=网络?stuff(s1,7,4,s2),stuff(s1,7,8,s2)计算机网络技术 计算机网络字符CHRTRAN(串1,串2,串3)当串1中的一个或多个字符与串2中的某个字符相匹配时,就用串3中的对应字符(与串2中的那个字符具有相同位置)X1=chrtran(ABACAD,ACD,X12)X2=chrtran(大家好,大家,您)?x1,x2XBX1X2 您好字符LIKE(串1,串2)比较两个字符串对应位置上的字符,若所有对应都相匹配,返回值为.t. 否则为.f.注:通配符必须包含在串1中。?like(ab*,abcd),like(g?d,good).T. .T.?like(abcd,ab*),like(good,g?d) .F. .F. 逻辑日期和时间函数函数名功 能实 例函数类型DATE()返回系统日期。?date()12/31/08日期TIME()返回系统时间?time()15:30:38字符DATETIME()返回系统日期时间?datetime()12/31/08 15:30:21 PM日期时间YEAR()从指定日期或日期时间表达式返回年份S1=2008-12-31S2=2007-05-01,15:30:28?year(s1),year(s2)2008 2007数值MONTH()从指定日期或日期时间表达式返回月份?month(s1),month(s2) 12 5数值DAY从指定日期或日期时间表达式返回天数?day(s1),day(s2) 31 1数值HOUR从指定日期时间表达式中返回小时数?hour(s2)15数值MINUTE()从指定日期时间表达式中返回分钟数?mintue(s2)30数值SEC()从指定日期时间表达式中返回秒数?sec(s2)28数值数据类型转换函数函数名功 能实 例函数类型STR(数值表达式,长度,小数位)将数值表达式转换成字符串,转换时根据需要自动四舍五入。如果指定长度超过实际数值的长度则字符串加前导空格满足规定长度,如果长度大于数值表达式的整数部分但小于因保留小数位而得到的宽度则优先满足整数部分,小数部分自动调整。如果指定长度小于整数的长度则返回一串星号(*)如果省略长度则默认超大为10N1=1200.3596897N2=str(n1,10,2) N3=str(n1,6,4)N4=str(n1,3)?n1,n21200.26 1200.4?n4, len(str(125)* 10字符VAL(字符表达式)将由数字符号组成的字符型数据转换成相应的数值型数据。若字符串内出现非数字字符,则只转换前面的部分。S1=1200a300S2=1e3abc & 1e3为科学记数法?val(s1),val(s2)1200 1000数值CTOD(字符表达式)将字符串转换成日期型数据(Char to date )q1=12/25/08q2=ctod(q1)list memory like q*日期DTOC(日期表达式)将日期型数据转换成字符串(date to char)W1=2008-12-31W2=dtoc(w1)List memory like w*字符TTOC(日期时间表达式)将日期时间型数据转换成字符串(datetime to char)T1=2008-08-08,20:30:00T2=ttoc(t1)List memory like t*字符CTOT(日期时间表达式)将字符串转换成日期时间型数据。(char to datetime)T3=ctot(t2)List memory like t*日期ASC(字符表达式)返回字符表达式中最左边字符的ASC代码返回对应的字符(即返回对应的ASC码值为数值表达式的值)?asc(china)99数值CHR(数值表达式)计算数值表达式的值,然后以该值为ASC代码返回其对应的字符(即返回字符的)?chr(97)c字符2.3.5测试函数函数名功 能实 例函数类型Between(表达式1,表达式2,表达式3)若表达式1的值大于等于表达式2且小于等于表达式3则返回值为真,否则返回值为假。?Between(20,0,100).T.逻辑ISNULL( 表达式)判断一个表达式的运算结果是否为NULL, 若是NULL则返回值为逻辑真,否则为逻辑假。?ISNULL(.NULL.).T.逻辑RECCOUNT(|)返回表的记录总数。若表尚未打开则返回0。Use cj11?reccount()数值DELETED()若指定表的当前记录有逻辑删除标记则返回值为真,否则返回值为假。Use cj11Go 3?deleted()逻辑IIF(逻辑表达式,表达式1,表达式2)若逻辑表达式的值为真,返回表达式1的值,否则返回表达式2的值。X=20?iif(x10,x*50,x*x)1000任意数据类型EMPTY(表达式)功能:根据指定表达式的运算结果是否为“空”值,返回逻辑真(.T.)或逻辑假(.F.)。首先要注意,这里的”空”值与NULL值是两个不同的概念。函数EMPTY(.NULL.)的返回值为逻辑假(.F.)。该函数自变量表达式的类型可以是数值型、字符型、逻辑型、日期型,不同类型数据的“空”值,有不同的规定,如表所示 数据类型“空”值数据类型“空”值数据类型“空”值数值型0双精度型0逻辑型.F.字符型日期型空(如ctod(“”)浮点型0货币型0日期时间型空(如ctot(“”)整型0VARTYPE()功能:测试的类型,返回一个大写字母,函数值为字符型。字母的含义如图所示数据类型返回字符数据类型返回字符数据类型返回字符数值型N日期型D通用型G货币型Y日期时间型TNULLX字符型C逻辑型L对象型O文件尾(END OF FILE)测试函数EOF(|) 功能:测试指定表文件中的记录指针是否指向文件尾,若是就返回逻辑真(.T.)否则返回逻辑假(.F.)。文件尾是指最后一条记录的后面位置。若表文件不包含任何记录,函数返回值为逻辑真(.T.) 表文件首(BEFORE OF FILE)测试函数BOF(|)功能:测试指定表文件中的记录指针是否指向文件首,若是返回逻辑值真(.T.),否则返回逻辑假(.F.)。表文件首是指第一条记录之前的位置。若表文件不包含任何记录,函数返回值为逻辑真(.T.)2.4 Visual FoxPro的表达式在Visual FoxPro系统中,表达式是由常量、变量、函数及其他数据容器单独或与运算符组成的有意义的运算式子。 运算符是对数据对象进行加工处理的符号,根据其处理数据对象的数据类型,运算符分为算术(数值)运算符、字符运算符、日期时间运算符、逻辑运算符和关系运算符五类,相应的,表达式也分为算术表达式、字符表达式、日期时间表达式、逻辑表达式和关系表达式五类。 常量、变量和函数可以作为表达式的特例。今后涉及到表达式的描述,除特别指明,均可包含这些特殊的形式。Visual FoxPro系统中,各类运算的优先顺序如下: 圆括号算术和日期运算字符串运算关系运算逻辑运算2.4.1 算术表达式 算术表达式又称数值表达式,其运算对象和运算结果均为数值型数据。数值运算符的功能及运算优先顺序,如表2-2所示。表中运算符按运算优先级别从高到低顺序排列。表2-2 算术运算符运算符功能表达式举例运算结果优先级别()圆括号(2+3)*(25-10)75最高最低-取负数-(5-20)25*、乘幂2*5、2532*、/乘、除2*25,50/1050,5%取余数22%52+、-加、减12+25,100-2537,75注:取余时余数的符号应与除数的符号相同。?26%-3, -26%3,-26%-3-1 1 -2如果被除数与除数同号,那么运算结果为两数相除的余数,如果被除数与除数异号,则运算结果为两数相除的余数加上除数的值。2.4.2字符表达式 字符表达式是由字符运算符将字符型数据对象连接起来进行运算的式子。字符运算的对象是字符型数据对象,运算结果是字符常量或逻辑常量。表2-3为字符运算符 的功能。 +与 -都是字符连接运算符,都将两字符串顺序连接,但“+”是直接连接,“-”则将串1尾部所有空格移到串2尾部后再连接;“$”运算实质上是比较两个串的包含关系,因此有些书籍中将其归于关系运算,其作用是比较、判断串1 是否为串2的子串,如果串1是串2的子串,运算结果为“真”,否则为“假”。运算符功能运算举例运算结果+串1+串2:两串顺序相连接S1=中国S2= 江苏?s1+s2List memory like s*中国江苏-串1-串2:串1尾空格移到串2尾后再顺序相连接?s1-s2List memory like s*中国江苏$串1$串2:串1是否为串2子串S1=国江苏S2=江苏S3=江阴?s2$s1 ,s3$s1.T. .F. 2.4.3 日期表达式 由日期运算符将一个日期型或日期时间型数据与一个数值型数据连接而成的运算式称为日期表达式。日期运算符分为“+”和“-”两种,其作用分别是在日期数据上增加或减少一个天数,在日期时间数据上增加或减少一个秒数。两个运算的优先级别相同。2.4.4 关系表达式 由关系运算符连接两个同类数据对象进行关系比较的运算式称为关系表达式。关系表达式的值为逻辑值,关系表达式成立则其值为“真”,否则为“假”。 表2-4 关系运算符 运算符功 能举 例运算结果小于20+30大于30+20=大于等60+20=100.F.=小于等于20+30=20*30.T.、#、!=不等于3050.T.=等于(字符串精确等于)中国=中国.T.说明:1、 当比较两个字符串时,系统对两个字符串的字符自左向右逐个进行比较,一旦发现两个对应字符不同,就根据两个字符的大小决定两个字符串的大小,而不是比较两字符串的长短。2、 字符的大小比较取决于字符集中的字符的排序次序,排在前面的字符小,排在后面的字符大。在环境下默认的排序次序为“拼音”可以使用命令 Set collate to “排序次序名” 设置排序方式。排序的方式有”machine”机器、PinYin拼音、或“stroke”笔画三种。Machine (机器)次序:空格大写字符小写字母PinYin(拼音)次序:按照拼音次序排序,空格小写字母大写字母Stroke(笔画)次序:无论中文、西文,按照书写笔画的多少排序。也可以通过VFP系统菜单“工具” “选项” 数据 “排序序列”进行设置。字符串精确比较与exact设置。在使用双等于号(= =)比较两个字符串时,只有当两个字符串完全相同时,运算结果才会为逻辑真.T.,否则为逻辑假.F.。在用单等于号运算符(=)比较两个字符串时,运算结果与set exact on|off 的设置有关:ON:先在较短的字符串的尾部加上若干个空格,使两个字符串长度相等,然后再进行比较。OFF:默认值,当处于off状态时,只有右边字符串与左边字符串的前面部分的内容相匹配,即可得到逻辑真.T. 的结果,即字符串的比较因右面的字符串结束而终止。s1=计算机s2=计算机基础?s2=s1,s2= =s1.T. .F.set exact on ?s2=s1,s2= =s1.F. .F.赋值与等于比较的区别。赋值运算:=表达式等号的左边必须为内存变量名。相等比较运算:= 等号两边都是表达式,当然也可以时内存变量但必须先赋值。运算方式说明结果运算方式说明结果X1=30赋值运算30X1=X2赋值运算X1的值为30X2=50赋值运算50?x1,x2输出30 30?x1=x2比较运算.F.2.4.5 逻辑表达式 由逻辑运算将逻辑型数据对象连接而成的式子称为逻辑表达式。逻辑表达式的运算对象与运算结果均为逻辑型数据。表2-5为逻辑运算符的功能。逻辑运算符前后一般要加圆点“.”标记,以示区别。运算符功能优先级()圆括号高A低.not. 或!逻辑非.and.逻辑与.or.逻辑或BABAAND B 结果.T.T.T.T.F.F.F.T.F.F.F.F.AOR B 结果.T.T.T.T.F.T.F.T.T.F.F.F.312 历届最新考题汇编一、选择题(1)要想将日期型或日期时间型数据中的年份用4位数字显示,应当使用设置命令 【A】A)SET CENTURY ON B)SET CENTURY OFFC)SET CENTURY TO 4D)SET CENTURY OF 4(2)依次执行以下命令后的输出结果是【B】SET DATE TO YMD SET CENTURY ON SET ENTURY TO 19 ROLLOVER 10SET MARK TO “.”?CTOD(“49-05-01”)A)49.05.01B)1949.05.01C)2049.05.01D)出错(3)从内存中清除内存变量的命令是【A】A)Release B)DeleteC)EraseD)Destroy(4)执行如下命令序列后,最后一条命令的显示结果是【C】DIMENSION M (2,2)M(1,1)=10M(1,2)=20M(2,1)=30M(2,2)=40?M(2)A)变量未定义的提示B)10C)20D).F.(5)在Visual FoxPro内存变量的数据不包括【C】A)数值型B)货币型C)备注型D)逻辑型(8)在下面的数据类型中默认值.F.的是【C】A)数值型B)字符型C)逻辑型D)日期型(9)假设使用DIMENSIONa(5)定义了一个一维数组a,的正确的赋值语句是【B】A)a6=10B)a=10C)a1,a2,a3=10D)STORE10a1,a2,a3(10)将数组A中的数据复制到表ab的当前记录中的语句是【C】A)SCATTER TO AB)SCATTER TO abC)GATHER FROM AD)GATHER FROM ab(11)在Visual FoxPro中,可以在同种类型的数据之间进行“-”(减号)运算的数据类型是【B】A)数值型、字符型、逻辑型B)数值型、字符型、日期型C)数值型、日期型、逻辑型D)逻辑型、字符型、日期型(12)内存变量一旦定义后,它的什么可以改变?【A】A)类型和值B)值C)类型D)宽度(13)下列字符常量的表示,哪个用错了定界符?【A】A)07/09/21B)“ABCDE”C)ABCED)07-09-21二、填空题(1)表示“1962年10月27日”的日期常量应该写为 1 。(2)常量.n.表示的是 2 型的数据。(3)在Visual FoxPro中说明数组后,数组的每个元素在未赋值之前的默认值是 3 。SCATTER FIELDS学号,姓名 4 。(5)FoxPro中的数组元素下标从 5 开始。(6)逻辑类型变量取值只有“真”和“假”,在FoxPro中分别用 6 表示。(7)字段变量是在 7 时定义的。(8)设变量n1=5,n2=10,n3=15,m1=20,m2=25,将所有以字母n开头的变量存入内存变量文件myfile.mem的命令是 8 。(9)显示当前内存变量的命令 6 。313全真试题训练一、选择题(1)在Visual FoxPro中,有下面几个内存变量赋值语句:【D】X=2008-04-07 10:15:20 PMY=.T.M=$123.45N=123.45Z=”123.45”执行上述赋值语句之后,内存变量X、Y、M、N和Z的数据类型分别是A)D、L、Y、N、CB)D、L、M、N、CC)T、L、M、N、CD)T、L、Y、N、C(2)下列选项中不是常量的是【A】A)abcB)”abc”C)1.4E+2D)2007/12/31(3)变量名不能包括【D】A)数字B)字母C)汉字D)空格(4)设当前有一字段变量A的值为123,另有一同名内存变量A的值为-123,则执行?M.A-A后屏幕将显示A)246B)-246C)0D)错误信息(5)以下日期值正确的是【B】A)“2007-09-25”B)2007-09-25C)2007-09-25D)2007-09-25(6)Visual FoxPro的变量分为两类,它们是【C】A)字符变量与数组变量B)简单变量与数值变量C)内存变量与字段变量D)一般变量与下标变量(7)Visual FoxPro中的逻辑型字段的宽度是【D】A)4B)3C)2D)1(8)下面能够作为变量名使用的是【D】A)37B)“变量”C)日期+时间D)预算值(9)在Visual FoxPro中,下面属于数值型常量的是【A】A)21/09/2007B)TC).F.D)“123”(10)清除当前内存中所有名字中第二个字符为A的内存变量,应该使用命令【D】A)RELEASE ALL*AB)RELEASE ALL EXCEPT ?A*C)RELEASE LIKE?A*D)RELEASE ALL LIKE?A*(11)在Visual FoxPro中二维数组的存储顺序是按下列哪项优先进行存储的?【B】A)列B)行C)下标D)不确定(12)以下常量中格式正确的是【D】A)$2.34E5B)“联想”“计算机”C).False.D)2002/9/25(13)DIMENSION a3,4语句定义的数组元素个数是【A】A)12B)7C)20D)16二、填空题(1)Visual FoxPro有六种类型的常量,它们分别是: 1 、 2 、 3 、 4 、 5 和 6 。(2)数值型常量由正负号、小数点和 7 构成;货币型常量的书写格式是数值型常量之前加前缀 8 ,但是不能使用 9 表示货币型常量;字符型常量的定界符有、“”和 10 三对,如果字符串的内容包含了某个字界符,则该定界符 11 (能/不能)作为定界符使用;日期型常量需要用 12 将年、月、日括起来,而年、月、日之间用斜杠(/)、连字号(-)、 13 和 14 分隔;日期时间型常量的时、分、秒的默认值是 15 ;逻辑型常量有两个值:逻辑值和逻辑假,分别用 16 和 17 表示。(3)将数组aa中的数据赋值到“学生”表的当前记录的姓名、学号字段中的命令是 18 。314(一)历届最新考题参考答案与分析(1)A (2)B (3)A (4)C (5)C (6)B (7)C (8)C (9)B (10)C (11)B (12)A (13)A二、填空题(1)11962-10-24或1962/10/27(2)2逻辑(3)3逻辑假.F. (4)4 TO A (5)51 (6)6.T.(.y.)和.F.(.n.) (7)7定义文件结构(8)8SAVE TO myfile ALL LIKE n*(9)9LIST MEMORY或DISPLAY MEMORY(
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025版二房东租赁合同样本:住宅公寓租赁
- 二零二五年度瓷砖原材料贸易合同范本
- 2025版海上货物运输及船舶报废合同
- 二零二五年度科技园区法律顾问服务合同
- 2025年度建筑垃圾处理与环保建材企业合作合同
- 二零二五年度法人投资公司项目借款合同
- 二零二五年度共享办公室租赁合同含企业财务顾问服务
- 二零二五年度智能照明系统安装人工合同样本
- 二零二五年度农业贷款担保合同
- 二零二五年度建筑工地安全培训及管理合同
- 肿瘤科规培生入科培训
- 2025-2030中国聚磷酸和聚磷酸铵行业需求状况与前景方向预测报告
- 科组经验介绍课件
- 社会救助政策培训课件
- 餐饮招商部管理制度
- 2025年中国AI翻译行业市场全景分析及前景机遇研判报告
- 钢结构涂装施工方案
- 典当公司档案管理制度
- 2024年公安招聘辅警考试笔试题(含答案)
- T/CCOA 56-2023拉面专用小麦粉
- 2025年养老护理员(二级)护理伦理试题汇编
评论
0/150
提交评论