第02章VF程序设计基础

上传人:大米 文档编号:580273606 上传时间:2024-08-28 格式:PPT 页数:23 大小:691.52KB
返回 下载 相关 举报
第02章VF程序设计基础_第1页
第1页 / 共23页
第02章VF程序设计基础_第2页
第2页 / 共23页
第02章VF程序设计基础_第3页
第3页 / 共23页
第02章VF程序设计基础_第4页
第4页 / 共23页
第02章VF程序设计基础_第5页
第5页 / 共23页
点击查看更多>>
资源描述

《第02章VF程序设计基础》由会员分享,可在线阅读,更多相关《第02章VF程序设计基础(23页珍藏版)》请在金锄头文库上搜索。

1、第2章VF程序设计基础n考点1常量n考点2变量n考点3表达式n考点4数值函数n考点5字符函数n考点6日期和时间函数n考点7转换函数数据类型n考点8程序文件概述n考点9程序基本结构n考点10多模块程序设计考点1常量n1.数值型常量数值型常量(即常数:用来表示一个数量的大小)(即常数:用来表示一个数量的大小)由数字19,小数点和正负号构成。数值型常量在内存中占用8个字节.n2.货币型常量货币型常量(用来表示货币值)(用来表示货币值)前置符号:$,采用4位小数,系统自动将多余小数位四舍五入。货币型常量在内存中占8个字节。n3.字符型常量字符型常量(即字符串:用(即字符串:用 ,“ ”, 等符号扩起)

2、等符号扩起)定界符必须成对匹配,它规定了常量的类型及起始和终止界限。日期格式设置命令:setcenturyon/off、setdateto、setmarkton4.日期型常量(格式有两种)日期型常量(格式有两种)它的定界符是一对花括号,内包括年、月、日三部分,各部分之间用分隔符分隔,如/、-、.和空格。n5.日期时间型常量日期时间型常量包括:日期和时间两部分:,。部分的格式为:hh:mm:ssa|p.默认值为12、0、0、a.n6.逻辑型常量逻辑型常量只有逻辑真和逻辑假两个值,占一个字节。表式形式:逻辑真(.T.、.t.、.Y.、.y.);逻辑假(.F.、.f.、.N.、.n.)经典考题返回考

3、点2变量nVF变量分为字段变量和内存变量两大类。字段变量:二维表中的字段名。内存变量:是内存中的一个存储区域,变量值就是存放在这个存储区域里的数据,变量类型取决于变量值的类型。内存变量的数据类型包括:C、N、Y、L、D、T。1.1.简单内存变量(前缀:简单内存变量(前缀:简单内存变量(前缀:简单内存变量(前缀:M.M.或或或或M- M- )赋值格式:1)=2)STORETO2.2.数组数组数组数组(由一系列元素组成,通过数组名和下标访问)数组必须先声明后使用,创建数组格式为:DIMENSION(,举例:DIMENSIONa(6),b(3,4)DIMENSIONa(2,3)DECLARE(,整个

4、数组的数据类型为A(Array),各数组元素可放不同类型的数据。经典考题返回1.算术运算:由算术运算符将数值型数据连接起来形成。算术运算:由算术运算符将数值型数据连接起来形成。2.字符运算:由字符串运算符将字符型数据连接起来形成字符运算:由字符串运算符将字符型数据连接起来形成l3.日期时间运算日期时间运算考点3表达式经典考题返回4.关系运算符关系运算符5.逻辑运算符逻辑运算符考点3表达式经典考题返回考点4数值函数经典考题返回考点5字符函数经典考题返回考点6日期与时间函数经典考题返回考点7数据类型转换函数和测试函数经典考题返回考点8程序文件概述n1、建立程序文件方式一:菜单方式方式二:modif

5、ycommandn2、执行程序文件 方式一:菜单方式方式二:DO经典考题返回考点9程序基本结构1If语句格式如下:语句格式如下:IF逻辑表达式程序体1ELSE程序体2ENDIF举例:CLEARINPUT”输入考试成绩:”TOchjIFchj60dj=”不合格”ELSEIFchj90dj=”通过“ELSEDj=”优秀”ENDIFENDIF?”成绩等级:”+djRETURNCase语句格式如下:语句格式如下:DOCASECASE逻辑表达式1程序体CASE逻辑表达式2程序体CASE逻辑表达式N程序体OTHERWISE程序体ENDCASE举例:CLEARINPUT输入考试成绩:TOchjDOCASEC

6、ASEchj60dj=不合格CASEchj90dj=通过OTHERWISEdj=优秀ENDCASE?成绩等级:=djRETURN经典考题返回考点9程序基本结构21. dowhile语句语句格式如下:DOWHILE程序体LOOPEXITENDDO举例:以下程序计算整数以下程序计算整数1到到100累加的和。累加的和。CLEARs=0i=1DOWHILEi=100s=s+ii=i+1ENDDO?”S=”,sRETURN2. forendfor语句语句格式如下:FOR内存变量=初值TO终值STEP步长程序体LOOPEXITENDFOR|NEXT举例:从键盘输入10个数,并找出最大值、最小值CLEARI

7、NPUT请输入一个数:TOaSTOREaTOmax,minFORi=2TO10INPUT请输入一个数:TOaIFmaxamin=aENDIFENDFOR?最大值:,max?最小值:,minRETURN返回经典考题考点10多模块程序设计n1、模块的定义和调用(1)定义过程:procedure|functionendproc|endfunc(2)模块调用:don2、参数传递(1)接收参数:parametersLparameters(2)传递参数:传递值,setudfparmstovalue传递引用,setudfparmstoreferencen3、变量的作用域(1)全局变量:public,在任何模

8、块中都可使用的变量。(2)局部变量:local,只能在建立它的模块中使用;(3)私有变量:默认,在建立它的模块以及其下属的各层模块使用;经典考题返回考点1经典题解【真题1】要想将日期型或日期时间型数据中的年份用4位数字显示,应当使用设置命令()。【2007年9月】A)SET CENTURY ON B)SET CENTURY OFFC)SET CENTURY TO 4 D)SET CENTURY OF4解析:在Visual FoxPro中,用环境设置命令SET CENTURY ONIOFF来确定是否显示日期表达式当前世纪部分,当设为ON时,以4位数字显示年份,当设为OFF时,以2位数字显示年份。

9、答案:A)【真题2】设x=“11”,Y=“1122”,下列表达式结果为假的是()。【2006年4月】A)NOT(X=Y)AND(X$Y)B)NOT(X$Y)OR(Y)C)NOT(X=Y)D)NOT(X$Y)解析:=、$、=是关系运算符,=是字符串精确比较,$是子串包含测试,表示不等于,=表示大于等于,x$Y的值为T,NOT(X$Y)的值为F。答案:D) 返回考点2经典题解【真题1】如果内存变量和字段变量均有变量名“姓名”,那么引用内存变量的正确方法是()。【2008年4月】A)M.姓名B)M一姓名C)姓名D)A)和B)都可以 解析:内存变量常用于存储程序运行的中间结果或用于存储控制程序执行的各

10、种参数。可直接通过变量名引用变量的值。但如果当前打开的表中有与变量同名的字段名,此时应使用“M.变量名”或“M一变量名”引用该变量,而字段名可以直接引用。答案:D)【真题2】假设职员表已在当前工作区打开,其当前记录的“姓名”字段值为“张三”(字符型,宽度为6)。在命令窗口输入并执行如下命令:姓名=姓名一”您好”?姓名那么主窗口中将显示( )。【2005年9月】A)张三B)张三您好C)张三您好D)出错解析:如果当前表中存在一个与内存变量同名的字段变量,则在访问内存变量时,必须在变量名前加上前缀M.(或M一),否则系统将访问同名的字段变量。答案:A)返回考点3经典题解【例题1】表达式2*23-4/

11、8+32的值为()。A)72.45B)24.50C)16 D)0 解析:在算术运算中,运算符的优先级是:( )*或(乘方) *(乘)、/(除)或(取余) +(an)或一(减)。答案:B)【例题2】在逻辑表达式中,3种运算符的优先顺序为_、和。 解析:在逻辑表达式中,共有3种运算符:逻辑非、逻辑与、逻辑或,3种运算符的优先顺序为:.NOT.(非).AND.(与).OR.(或)。答案:逻辑非逻辑与逻辑或【真题1】有如下赋值语句:a=“计算机”、b=“微型”,结果为“微型机”的表达式是()。【2008年4月】A)b+LEFT(a,3)B)b+RIGHT(a,1)C)b+LEFT(a,5,2)D)b+

12、RIGHT(a,2) 解析:取左、右子串函数的格式为:LEFTIRIGHT(expC,expN),其功能为:LEFT从expC左边截取由expN的值指定的字符,生成一个新的字符串;RIGHT从expC右边截取由expN的值指定的字符,生成一个新的字符串。注意一个汉字相当于两个英文字符。答案:D)【真题2】设x=“11”,Y=“1122”,下列表达式结果为假的是()。【2006年4月】 A)NOT(X=Y)AND(X$Y)B)NOT(X$Y)oR(XY) C)NOT(X=Y)D)NOT(X$Y) 解析:“= =“表示字符精确比较,“$”表示子串包含测试,“”表示不等于,“:”表示大于等于,(x$

13、Y)的值为真,所以选项D)为正确答案。答案:D)【真题3】表达式2005-10-310:0:0-2005-10-39:0:0的数据类型是。2006年4月 解析: 2005-l-3 10:0:0-2005-10-3 9:0:0是一个日期时间表达式,-型的日期时间表达式结果为两个指定13期相差的天数,数据类型为数值型。答案:数值型(N)返回考点4经典题解【例题1】在VisualFoxPro中,下面属于函数SIGN()的返回值的是()。A).T.B)-1C).F D)2解析:SIGN( )是用来返回指定数值表达式的符号,其返回值有1、0和-1,分别表示表达式的运算结果为正数、零和负数。答案:B)【例

14、题2】执行下列语句,其函数结果为()。s,FORE一:100 T0 X?SIGN(X)$SQRT(ABS(X)A)10.00 B)-l0.00C)100.00D)-100.00解析:SIGN( )返回指定表达式的符号; ABS( )返回指定表达式的绝对值;SQRT( )求指定表达式的平方根。答案:B)【例题3】函数ROUND(123.4567,3)的计算结果是()。A)123B)123.456C)123.4567D)123.457解析:ROUND( )是四舍五人函数,返回在指定位置四舍五入后的结果,指明四舍五入的位置。若大于等于0,表示的是要保留的小数位,若小于0,则表示整数部分的舍入位数。答

15、案:D)【真题】下面程序计算一个整数的各位数字之和。在横线处应填写的语句是()。【2007年9月】SETTALK 0FFINPUT ”x=“ TO xs=0DO WHILE x!=0s=s+MOD(x,10) ENDDO?sSET TALK ONA)x=int(x/10)B)x=int(x10)C)x=x-int(x/10)D)x=x-int(x10)返回考点5经典题解【例题1】表达式LEN(SPACE(20)-SPACE(15)的结果为()。A)5B)20C)35D)错误信息解析:SPACE( )函数是用来生成指定数量的空格,结果为字符型数据。在字符表达式中,不论+或一运算,都表示连接前后两

16、个字符串,连接后的新字符串长度总是等于所连接的两个字符串长度之和。LEN( )函数用来测试字符串的长度。答案:C)【例题2】执行语句?INT(LEN(“123.456”),在屏幕上的输出结果是()。A)1B)3C)6 D)7解析:LEN()函数是用来测试字符串长度的函数,INT( )函数是用来求整的函数,本题中LEN( )函数所测的字符串长度为7,因此INT的求整值仍然是7,千万不要弄混淆了。答案:D)【例题3】下列各字符型函数中,其函数返回值不是数值型的是()。A)LEN(“2003/04/15”)B)OCCURS(“电脑”,”计算机俗称电脑”)C)AT(“Fox”,”Visual For,

17、Pro”) D)LIKE(“a*”,”abcd”)解析:在字符函数中,LEN( )函数测试字符串长度。OCCURS( )函数计算子串出现的次数。AT( )函数求子串位置,其返回值均为数值型数据。LIKE( )函数比较两个字符串是否匹配,返回值为逻辑型。答案:D)【真题1】有如下赋值语句:a=“计算机”、b=“微型”,结果为”微型机”的表达式是()。【2008年4月】A)b+LEFT(a,3)B)b+RIGHT(a,1)C)b+LEFF(a,5,2)D)b+RIGHT(a,2)【真题2】命令?LEN(SPACE(3)一SPA(:E(2)的结果是()。【2007年9月】A)1B)2C)3D)5解析

18、:LEN()是求字符串长度的函数。SPAc:E()是空格字符串生成函数,返回由指定数目的空格组成的字符串。字符表达式“一”的含义是连接前后两个字符串,并将前字符串的尾部空格移动到合并后的新字符串尾部。因此SPA(:E(2)一SPACE(3)运算后的长度仍然是5。答案:D)【真题3】?AT(“EN”,RIGI-IT(“STUDENF,4)的执行结果是。【2007年4月】解析:RIGHT(“s7rUDENT”,4)表示取字符串”sTUDENT”右边的4个字符,结果为”DENT”,而AT( )函数用于判断第一个字符串表达式在第二个字符串表达式中的位置。答案:2返回考点6经典题解【例题1】假定系统日期

19、是2003年3月15日,则执行命令x1=MOD(YEAR(DATE()-2000,10)后,x1的值是()。A)-3B)3C)032003D)0解析:YEAR( )函数用来测试日期的年份,其结果是一个数值型数据,本题中利用求出的年份经过数值运算后,再利用MOD( )函数求3和10的余数,MOD( )函数的功能是返回两个数值相除后的余数。是被除数,是除数。余数的正、负号与除数相同。如果被除数与除数同号,那么函数值为两数相除的余数。如果异号,则函数值为两数相除的余数再加上除数的值。答案:B)【例题2】利用BOF()测试当前打开的一个空表文件,函数返回值为()。A).T.B).F.C)lD)0解析:

20、BOF( )的功能是测试当前表文件(默认自变量)或指定表文件中的记录指针是否指向文件首,若是,则返回逻辑真(.T.),否则为逻辑假(.F.)。若在指定工作区上没有打开表文件,则函数返回逻辑假(.F.),若表文件中不包含任何记录,则函数返回逻辑真(.T.)。答案:A)【真题】命令?VARTYPE(TIME()的结果是()。【2007年9月】A)cB)DC)TD)出错解析:VARTYPE()函数用于测试的数据类型,返回一个大写字母。TIME( )函数以24小时制、hh:mm:ss格式返回当前系统时间.函数值为字符型。在Visual FoxPro中,字符型数据用C字母来表示。答案:A)返回考点7经典

21、题解【例题1】下列表达式中,运算结果为逻辑真的是()。A)”总经理”$”经理”B)3+5#2*4C)”计算机”“计算机世界”D)2003/05/0l-CTOD(“05/01/03”)解析:“$”是子串包含测试,测试第一个字符串是否是第二个字符串的子串。#和都是“不等于”关系运算。=为字符串精确比较运算符,$和一都只适合于字符型数据。答案:C)【例题2】利用BOF()测试当前打开的一个空表文件,函数返回值为()。A).T.B).F.C)lD)0解析:BOF( )的功能是测试当前表文件(默认自变量)或指定表文件中的记录指针是否指向文件首,若是,则返回逻辑真(.T.),否则为逻辑假(.F.)。若在指

22、定工作区上没有打开表文件,则函数返回逻辑假(.F.),若表文件中不包含任何记录,则函数返回逻辑真(.T.)。答案:A)【真题1】设x=65,命令?V。ARrYPE(x)的输出是()。【2006年9月】A)NB)CC)LD)出错解析:在表达式“x=65”中,先计算65结果为逻辑假.F.,然后通过x=.F.把.F.赋给x,所以x为逻辑型,.9 VAR.TYPE(x)的输出是L。答案:C)【真题2】在VisualFoxPro卢,宏替换可以从变量中替换出()。【2006年4月】A)字符串B)数值C)命令D)以上三种都可能 解析:宏替换函数的格式:.。宏替换函数功能非常强,可以替换出字符型变量的内容,即

23、字符串,也可以替换出数值变量的值,或者用来执行某条命令。例如,可以将浏览数据表的命令赋值给变量A,即A=“BROWSE”,然后可以直接通过执行宏变量来运行命令,即&A。答案:D)返回考点8经典题解【例题1】在VisualFoxPro中,用来建立程序文件的命令是()。A)CREATE COMMANDB)CREATE FILEC)MODIFY FILED)MODIFY COMMAND解析:在Visual FoxPro中,建立和修改程序文件的命令都是MODIFY COMMAND命令。选项A)、B)属于语法错误,选项C)建立的是扩展名为.txt的文本文件。答案:D)【例题2】在VisualFoxPro

24、中,程序文件的扩展名为()。A).prgB).qprC).appD).SCX解析:在Visual FoxPro中,程序文件的扩展名为.prg,选项B)是查询文件的扩展名,选项C)是连编后的应用程序扩展名,选项D)是表单文件的扩展名。答案:A)【真题】下面程序段的输出结果是()。【2005年9月】ACCEPTTOAIFA=123456S=0ENDIFS=1?SRETURNA)0B)lC)由A的值决定D)程序出错解析:解析:语句S=1与?S是在ENDIF之后,所以最后显示的s的值不受前面语句的影响,仍为l。答案:B)返回考点9经典题解【例题1】设成绩表当前记录中“计算机”字段的值为85,执行下面程

25、序段之后,输出结果为()。DOCASECASE计算机=60?”计算机等级是”+”及格”CASE计算机=75?”计算机等级是”+”良好”CASE计算机=85?”计算机等级是”+”优”ENDCASEA)计算机等级是不及格B)计算机等级是及格C)计算机等级是良好 D)计算机等级是优答案:B)【例题2】执行如下程序,如果输入x的值为5,则最后s的显示值为()。SETTALK0FFS=0I=1INPUT”X=“TOXDOWHILES=XS=S+II=I+1ENDDO?SSETTALKONA)lB)3C)5D)6答案:D)【例题3】有如下程序:LOCALXl?X1DOPlPROCEDUREP1X1=1?X

26、1RETURNENDPROC执行程序的结果为()。A).F.1B)1.F.C).F.F.D)11答案:A)【真题1】下面程序的运行结果是()。2008年4月SETEXACTONS=“ni”+SPACE(2)IFs=“ni”IFs=“ni”?”one”ELSE?”two”ENDIFELSEIFs=“ni”?”three”ELSE?”four”.ENDIFENDIFRETURNA)oneB)twoC)threeD)four答案:C).返回考点10经典题解【例题1】通过PUBLIC命令建立内存变量,系统默认的内存变量初值为()。A).T.B).F.C)0D)1解析:解析:通过PUBLIC和LOCAL

27、等命令建立内存变量的同时,系统为该变量赋以初值逻辑假.F.。答案:B)【例题2】有如下程序:LOCAL Xl?X1DOP1PROCEDUREP1Xl=l?X1RETURNENDPROC执行程序的结果为()。A).F.1B)1.F.C).F.F.D)l1解解析析:LOCAL命令建立内存变量的同时为该变量赋以初值逻辑假,局部变量和私有变量相似。区别仅在于作用域的大小.局部变量的作用域只限于定义变量的模块中,对上下模块无效,在本题中,通过调用过程P1,变量x1的值为1。答案:A)【真题1】在VisualFoxPro中,过程的返回语句是()。【2007年9月】A)GOBACKB)COMEBACKC)R

28、ETURND)BACK解解析析:VisualFoxPro中过程式的返回语句为RETURN,当执行到RETURN命令时,控制将转回到调用程序,并返回表达式的值,如果RETURN不带表达式,则返回逻辑真.T.。答案:C)【真题2】在VisualFoxPro中,如果希望内存变量只能在本模块(过程)中使用,不能在上层或下层模块中使用。说明该种内存变量的命令是()。【2007年4月】A)PRIVATEB)LOCAI。C)PuBLICD)不用说明,在程序中直接使用解解析析:VisualFoxPro中的内存变量分为公共变量、私有变量和局部变量,其中局部变量只能在建立它的模块中使用,不能在上层和下层模块中使用,而且要用命令LOCAL说明。答案:B)【真题3】如果有定义LOCALdata,data的初值是()。【2006年9月】A)整数B)不定值C)逻辑真D)逻辑假.解解析析:局部变量用LocAL命令建立:LDCAL,该命令建立指定的局部内存变量,并为它们赋初值逻辑假.F.。答案:D)返回

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 医学/心理学 > 基础医学

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号