浙江万里学院VFP学生自主学习报告_第1页
浙江万里学院VFP学生自主学习报告_第2页
浙江万里学院VFP学生自主学习报告_第3页
浙江万里学院VFP学生自主学习报告_第4页
浙江万里学院VFP学生自主学习报告_第5页
已阅读5页,还剩47页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、精选优质文档-倾情为你奉上Visual FoxPro程序设计课程学生自主学习报告( 学年 第二学期)班级: 学号: 姓名: 组 别组长任课老师小组成员浙江万里学院基础学院计算机部Visual FoxPro程序设计课程组讨论一 VFP基础知识一.讨论准备:学生分组讨论VFP数据类型、表达式、运算符、常用函数及表的基本操作命令等基础知识,由组长安排时间地点组织分组研究学习并完成基础知识练习题。二.讨论目的:使学生熟练掌握VFP数据类型、表达式、常用函数等基础知识,为后续的算法设计打好坚实的语法知识。三.讨论要求:各分组由学生小组长负责记录成员任务分工及学习讨论学习情况,并完成小组活动记录手册。各组

2、成员在讨论学习基础上完成自主学习报告一。四.讨论内容:(1)VFP提供的数据类型有哪些?可用于字段变量、内存变量和常量的数据类型分别有哪些?(2) VFP提供的运算符有哪些?运算符可分为几类?VFP表达式有几类,VFP表达式与数学表达式有何区别?(3)VFP常用函数有哪些?对常用函数按其功能分类并举例说明函数使用格式及其功能。(4)VFP有关表操作的常用命令有哪些?对常用命令分类并举例说明命令使用格式及作用。五. VFP基础知识练习题1) 数据库DB、数据库系统DBS、数据库管理系统DBMS三者之间的关系是:AA) DBS包括DB和DBMSB) DBMS包括DB和DBSC) DB包括DBS和D

3、BMSD) DBS就是DB,也就是DBMS2) Visual FoxPro 6.0数据库系统是(C)型数据库系统。A) 网络B) 层次C) 关系D) 链状3) 设A=“123”,B=“234”,表达式(C)的值为假(.F.)。A) .NOT.(A=B) .OR.(B$“ABC”)B) .NOT.(A$“ABC”).AND.(A<>B)C) .NOT.(A<>B) D) .NOT.(A>=B)4) 将逻辑假值赋给内存变量DY的正确方法是BA) DY=FALSE B) STORE .F. TO DYC) DY=“.F.” D) STORE “F” TO DY5) 假定

4、Y=2,执行命令 ?Y=Y+2 后,其结果是CA) 3B) 4C) .F.D) .T.6) 在下列Visual FoxPro表达式中,结果为日期型的正确表达式是BA) DATE()+TIME ()B) DATE()+120C) DATE()-CTOD(02/01/99)D) 288-DATE ()7) 变量string=“1999年上半年全国计算机等级考试”,能够显示”1999年上半年计算机等级考试”的命令是CA) ?string-”全国”B) ?SUBSTR(string,1,8)+SUBSTR(string,11,17)C) ?SUBSTR(string,1,12)+SUBSTR(stri

5、ng,17,14)D) ?STR(string,1,12)+ STR(string,17,14)8) 如果没有定义变量F,执行下列命令后,其结果为U的表达式是BA) ?TYPE(”.F.”)B) ?TYPE(”F”)C) ?TYPE(.F.)D) ?TYPE(F)9) 命令序列W1=“GOOD MORNING!”W2=SUBSTR(STUFF(W1,6,0,”LUCKY”),1,10)?W2执行后,其结果为CA) GOOD MORNINGB) GOOD LUCKY MORNINGC) GOOD LUCKYD) LUCKY MORNING10) 安全可靠地退出Visual Foxpro系统地正确

6、方法是AA) 在命令窗口中执行QUIT命令B) 关掉计算机电源C) 在命令窗口执行EXIT命令D) 在”文件”菜单中执行”关闭”11) 使用DIMENSION命令定义数组后,各数组元素在没有赋值之前数据类型是CA) 字符型B) 数值型C) 逻辑型D) 未定义12) 在下列Visual Foxpro表达式中,运算结果一定是逻辑值的是CA) 字符表达式B) 数值表达式C) 关系表达式D) 日期表达式13) 在Visual Foxpro中,MIN(ROUND(8.89,1),9)的值是BA) 8B) 8.9C) 9D) 8.8914) 函数LEN(ABC-ABC)的值是BA) 0B) 6C) 7D)

7、 315) 若变量X=10,KK=“X=123”,则函数TYPE(“KK”)的值为CA) LB) NC) CD) 错误16) 条件函数IIF(LEN(SPACE(1)-“1”)=2),1,-1)的值是AA) 1B) 2C) -1D) 017) 顺序执行以下赋值命令X=“50”,Y=6*8,Z=LEFT(“Visual Foxpro”,3)之后,下列表达式中,合法的表达式只有DA) X+Y B) Y+Z C) X-Z+YD) &X+Y18) 执行下列命令序列ABC=“万里学院”? SUBSTR(ABC,LEN(ABC)/2+1,4)结果是BA) 万里B) 学院C) 里学D) 变量未找到1

8、9) 表达式ASC(“APPEND”)的值为CA) 128B) 97C) 65D) “A”20) 执行以下命令序列(设今天为2005年2月1日)B?YEAR(DATE()-365) 的结果为A) 其中有语法错误B) 2004C) 2000D) 2002-1-5 21) 下列4个表达式中,运算结果为数值型的是DA) ? ”9988”-”1255”B) ? 200+800=1000C) ? 2015/05/16-20D) ? LEN(SPACE(3)22) 设变量X=12345.678,现欲求变量X的整数位数,应使用表达式 CA) LEN(INT(X)B) LEN(STR(INT(X)C) LEN

9、(LTRIM(STR(X)D) LEN(ALLTRIM(INT(X)23) 将字符型数据转换成日期型数据,使用的函数是CA) dtocB) strC) ctodD) val24) 2005/01/05+15是一个( C )A) 日期常量B) 数值常量C) 日期表达式D) 非法表达式25) 以下选项中,( A )是合法的字符型常量A) 123+E456B) 123C) 123.456D) 123*1026) 下面哪个不是给内存变量赋值的正确语句DA) x35 B) x=“35”C) x=int(3+5)D) x=val(“3+5”)27) 与其它三个关系运算符不等价的是DA) <>B

10、) #C) !=D) ><28) 建立一个表文件结构时,若该库文件中有备注型字段,则保存时会(D ) A) 只创建一个表文件,扩展名为. dbfB) 在创建一个表文件同时还创建一个备注文件,扩展名为.CDXC) 在创建一个表文件同时还创建一个备注文件,扩展名为.txtD) 在创建一个表文件同时还创建一个备注文件,扩展名为.fpt 29) 要求数据表文件某数值型字段的整数是5位,小数是1位,该字段的宽度至少定义为(B ) A) 8位B) 7位C) 6位D) 5位 30) 一个表的全部备注字段的内容存储在(D )中A) 同一数据表文件B) 不同表备注文件C) 同一文本文件D) 同一表备

11、注文件31) 下述命令中的哪一条不能关闭表( A)A) CLEARB) CLOSE DATABASEC) USED) CLEAR ALL32) 建立一个表文件结构,表中有编号字段(C型,6字节),出生年月字段(D型)和团员否字段(L型),则表中总的字段宽度是(C)A) 18B) 17C) 16D) 1533) 下列命令中,修改表文件结构的命令是(B )A) MODIFY FILEB) MODIFY STRUCTUREC) MODIFY COMMANDD) CREATE STRUCTURE34) 在Visual FoxPro 的表结构中,逻辑型,日期型和备注型字段的宽度分别为(A)A) 1,8,

12、4 B) 1,8,10 C) 3,8,10D) 3,8,任意35) 要显示表中当前记录的内容,可使用命令( B)A) LISTB) DISPLAYC) BROWSED) modify36) 用APPEND 命令插入一条记录时,被插入的记录在表中的位置是( A)A) 表最后面B) 表最前面C) 当前记录之前D) 当前记录之后37) 不能对记录进行编辑修改的命令是( C)A) BROWSEB) CHANGEC) MODIFY STRUCTURED) EDIT38) Visual FoxPro表文件由两部分组成,即(B )A) .DBF文件和.FPT文件B) 表结构和记录数据C) .DBF文件和.B

13、AK文件D) PRG文件和.FXP文件39) XS.DBF是一个具有一个备注字段和一个通用字段的表文件,使用COPY TO PXS 命令进行复制操作,其结果为(B )A) 得到一个新表文件B) 得到一个新的表文件和一个新的表备注文件C) 得到一个新的表文件和一个新的表备注文件,以及一个新的表通用文件D) 得到一个新的表文件和两个新的表备注文件40) 在Visual FoxPro系统中,”DBF”文件被称为(B )A) 数据库文件B) 表文件C) 程序文件D) 项目文件41) 如果要给当前表增加一个字段,应使用的命令是( B)A) APPENDB) MODIFY STRUCTUREC) INSE

14、RTD) EDIT42) 在表的备注字段中可以输入的内容有( D)A)图像 B)波形声音 C)视频剪辑 D)文字43) 当RECALL命令不带任何范围和条件时,表示(D )。A)恢复所有带删除标记的记录B)恢复从当前记录以后所有带删除标记的记录C)恢复当前记录开始下一条带删除标记的记录D)恢复当前记录44) 在已打开表文件的第3条记录前插入一条记录,可使用( B)命令。A)GO 3 B)GO 3 INSERT INSERT BEFOREC)GO 3 D)GO 4 INSERT BLANK INSERT BEFORE45) 下列叙述正确的是(C)A)只能打开一个数据库 B)备注字段的数据保存在表

15、文件中C)可以使用多个工作区打开多个表 C)一个工作区可以同时打开多个表46) 已建立一个”学生”表Student.dbf,并输入5名学生的记录,用APPEND命令追加一条新记录,这个新记录的记录号是(B ):A) 5 B) 6 C) 7 D) 447) 将逻辑真值赋给内存变量X的正确方法是(D)。A)X=True B)STORE “.T.” TO XC)X=T D)STORE .T. TO X48) 在下列函数中,函数值为数值的是( C )。A) BOF() B) CTOD('01/01/96')C) AT('人民','中华人民共和国') D)

16、 SUBSTR(DTOC(DATE(),7)49) 在Visual FoxPro的表文件中,每条记录总长度比定义的所有字段宽度之和多一个字节,该字节用于( D )。A) 存放索引关键字 B) 存放记录号C) 存放记录宽度 D) 存放删除标记50) 在命令窗口中,已打开学生表,要将记录指针定位在第一个奖学金大于75元的记录上,用命令( B )。 A) FIND FOR 奖学金>75 B) LOCATAE FOR奖学金>75 C) SEEK FOR 奖学金>75 D) LIST FOR 奖学金>7551) 现有以下命令:T=23400M=MOD(T,60) HH=INT(T

17、/60) H=MOD(HH,24) D=INT(HH/24) ? D,H,M执行上述命令后的结果为( C)。A)0 616 B)6 16 0C)16 6 0D)6 0 1652) 在Visual FoxPro中,Max(ROUND(9.26, 1),8)的值是(A )。A)9.3B)9C)1D)853) 命令序列A=8B=6? IIF(A<>B,8,6)的值是( B)。A)6B)8C).T.D)054) 在下列Visual FoxPro表达式中,结果为字符串的正确表达式是( A )。A)“1234”-”43” B)”ABCD”+“XYZ”=“ABCDXYZ”C)DTOC(DATE(

18、)>“09/24/09” D)DATE()55) Visual FoxPro中,打开表文件后,若要浏览表中的数据,可以执行(C)命令。A)CREATE B)MODIFY C)BROWSE D)SKIP56) 设当前已打开表文件X.DBF,执行命令COPY STRU TO Y的作用是( D)。A)仅将当前一条记录拷贝到Y.DBF中B)将X.DBF的全部记录拷贝到Y.DBF中C)将X.DBF和Y.DBF的内容连接后再存入Y.DBF中D)仅将表文件X.DBF的结构复制到新建立的Y.DBF文件中57) 表文件中有10条记录,当前记录号为3,执行命令LIST Next 4(回车)所显示的记录的序号

19、为( C)。A)47 B)58 C)36 D)31058) 设当前记录号是10,执行命令SKIP -6后,当前记录号变为(A)A)4 B)5 C)6 D)359) 已建立一个学生表Student.dbf,并输入10名学生的记录,当前记录为5,用ZAP命令删除记录,删除的记录是(C):A) 第5条记录 B)第510条记录 C)全部记录 D)没有记录删除60) ? “化学” $ “北京语言文化学院”的运算结果是( A )。 A).T. B).F. C)9 D)561) 执行下面命令序列后,最后一条命令显示的结果为( A)。USE 库存表DISPDISPDISP NEXT 2? RECNO()A)2

20、 B)3 C)4 D)562) 表文件中有数学,英语,计算机和总分四个数值型字段,要将当前记录的三科成绩汇总后存入总分字段中,应使用命令( B)。A)TOTAL 数学+英语+计算机 TO 总分B)REPLACE 总分 WITH 数学+英语+计算机C)SUM 数学+英语+计算机 TO 总分D)REPLACE ALL 数学+英语+计算机 WITH 总分63) 在当前表中,查找第2个男同学的记录,应使用命令( C )。A) locate for 性别=“男” next 2B) locate for 性别=“男”C)先执行locate for 性别=“男”,然后再执行 continueD) list

21、for 性别=“男” next 264) 设表TXL.DBF中有 20 条记录。在VFP命令窗口中执行以下命令序列,最后显示的结果是( D)。 USE TXL SKIP 3 COUNT TO N ? NA) 0 B) 3 C) 4 D) 2065) 下面哪个命令可以同时给多个变量赋值( C )。AINPUT B. ACCEPT C. STORE D. WAIT66) 表文件的表结构中有语文、物理、化学和总分字段,且都是数值型,要将所有学生的各门成绩汇总后存入总分字段中,使用命令(C):A)REPLACE 总分WITH 语文+物理+化学B)REPLACE 总分WITH 语文,物理,化学C)REP

22、LACE ALL 总分WITH 语文+物理+化学 D)REPLACE ALL总分WITH 语文+物理+化学 FOR REST67) 在下列四个选项中,不属于VFP逻辑运算符的是( D )。A. .AND. B. ! C. .OR. D. .XOR.关系中的属性对应于二维表中的( B)。A. 记录 B. 字段 C. 行 D. 范围68) 已知当前表有80个记录,当前记录为第10号记录。执行SKIP 3后当前记录为第(C)号记录。A. 7 B. 10 C. 13 D. 1569) 表学生.DBF中共有20个记录,顺序执行下面命令(C):SET DELETED OFFUSE 学生DELETECOUN

23、T TO AAPACKCOUNT TO AAZAPCOUNT TO AAUSE3次COUNT 得到的AA结果分别为:A)19,19,1 B)19,19,0 C)20,19,0 D)20,19,1970) 当EOF()函数的值为真时,记录指针位于( B )。A. 表文件的头 B. 表文件的尾 C. 最后一条记录 D. 第一条记录71) 在VFP中,最多可以有( C )个工作区。A. 10 B. 255 C. 32767 D. 任意72) 若想从字符串'计算中心'中取出'算'字,应用函数( C )。A. SUBSTR(“计算中心”,2,2) B. SUBSTR(“计

24、算中心”,2,1)C. SUBSTR(“计算中心”,3,2) D. SUBSTR(“计算中心”,5,2)73) 数据库系统中的核心是( B)。A. 硬件系统 B. 数据库集合 C. 数据库管理系统 D. 数据库管理者和用户74) 下述命令中,不能显示数据表记录的命令是( D )。A. LIST B. DISP C. BROWSE D. MODI STRU75) 某数值型字段的宽度为9位,小数位数为3位,则该字段的最大值是(C )A) B)999 C)99999.999 D)99999.9976) 下列命令序列输出结果为(C)。USE 工资表GO BOTTOM SKIP 1? EOF()A).T

25、. B)T C).F. D)F77) 设N=“213.4”,? 21+&N的结果是(B )A)21B)234.4C)213.4D)数据类型不匹配78) 执行下列命令序列AB=“热烈庆祝建国60周年”? SUBSTR(AB,LEN(AB)/3-1,4)结果是( B)。A)建国 B)庆祝 C)周年 D)6079) 在Visual FoxPro中,要将一个数值型变量转换为字符型变量,应使用的函数为(D)。A)INT() B)CTOD() C)VAL() D)STR()80) 计算结果不是字符串”Teacher”的语句是( A)。A)at("ch","MyTeac

26、her") B)substr("MyTeacher",3,7 )C)left("Teacher",7 ) D)right("MyTeacher",7 )自主学习项目报告(一)项目名称项目类别自主学时(小时)完成项目日期教师评价VFP基础知识基础练习理论一、 讨论学习内容提纲1、VFP提供的数据类型2、VFP表达式和运算符3、自由表与数据库表的区别4、表操作常用命令 5、VFP常用函数二、讨论学习中出现的问题或体会三、讨论学习内容知识点归纳及举例说明(可粘贴附页)要求:1、归纳VFP的运算符种类2、简述自由表与数据库表的区别

27、3、归纳表的基本操作命令,描述命令基本格式,并举例说明命令功能4、归纳VFP常用函数,描述函数基本格式,并举例说明函数功能第一题1.算数运算符(举例结果为.t.)() 分组优先运算符 例子:(3+2)*2=10*、 乘方运算符 例子:32=9*、/ 乘除运算符 例子:2*3=6 9/3=3% 求余运算符 例子:5%2=1+、- 加减或单目运算符 例子:2+3=5 8-4=4运算符的优先级依次为括号、单目运算、乘幂、乘除、求余、加减。2.字符运算符+ 字符串连接符,功能:将运算符2边的字符串连接起来,形成一个新字符串。例子:”ab”+”cd”=”abcd”- 串尾空格移位连接符,功能:将2个字符

28、连接时,把第一个字符串的尾部空格(若存在)移到后面字符串的尾部。例子” abc ” -”de”=”abcde ”3.关系运算符(举例结果为.t.)< 小于 例子:3<5 > 大于 例子:5>4= 等于 例子:”asdf”=”asd”= 相等比较 例子:”abcd”=”abcd”<= 小于等于 例子:4<=5>= 大于等于 例子:7>=7<>、#、!= 不等于 例子:2+3<>3+3$ 包含运算 ”ab”$”abcde”4.逻辑运算(按优先级顺序排列).NOT.或NOT或! 逻辑非 例子:.NOT.T.=.F.AND.或AN

29、D 逻辑与 例子:A=.T. B=.F.,A .AND. B=.F.OR.或OR 逻辑或 例子:A=.T. B=.F.,A .OR. B=.T.第二题归属于某个数据库的表称为数据库表。独立存在、不与任何数据库相关联的表称为自由表。两种表可以相互转化的。区别:数据库表对于自由表来说具有更加强大的功能以及拥有自由表所没有的许多特性:长文件名、字段验证等。所以大多数应用需要建立数据库,并创建新表或添加自由表到数据库中,即成为数据库表。1.数据库表可以使用长字段名(最多可达到128个字符),而自由表最多只能达到10个字符。2.数据库表可以指定标题和添加注释,可以指定规则、提示信息、默认值和输入掩码。

30、而自由表没有以上设置。3. 数据库表可以建立主索引。而自由表不能建立主索引。第三题(1)<范围>子句用以确定显示的记录(即表中的行) RECORD n 显示第n条单条记录 NEXT n 显示当前记录开始的共n条连续记录 REST 显示当前记录开始到表文件尾的所有记录 ALL 显示所有记录(可省略)(2) FIELDS<字段名表>用以确定显示的字段(即表中的列)若省略“FIELDS<字段名表>”子句,则表示对所有字段进行操作。(3)1.打开表文件USE<文件名>打开指定的表文件,记录指针指向第一条记录,表中若有备注字段,相关的备注文件自动打开(.F

31、PT)例:USE 学生成绩记录表2.关闭表文件USE关闭当前工作区表文件CLOSE TABELS关闭所有打开的表文件3.记录指针定位 绝对移动GO/GOTORECORD<记录号>GO/GOTO TOP 顶GO/GOTO BOTTOM 底 相对移动SKIP<±n>正整数往文件尾,负整数往文件头例;GOTO 3 SKIP 3 ?RECNO()6(4)显示、浏览表文件显示命令格式:LIST<范围>FIELDS<字段名表>FOR<条件>WHILE<条件>例:LIST RECO 4显示第4条记录浏览命令格式:DISPLAY

32、<范围>FIELDS<字段名表>FOR<条件>WHILE<条件>当省略 “<范围>”时,LIST命令显示所有记录;DISP命令则显示当前记录(5)追加与修改记录APPEND BLANK例:向当前数据表尾部追加记录。 APPEND(6)插入记录(默认在当前记录的后面插入记录)INSERT BLANKBEFORE例:在当前记录后插入一条空记录。INSERT BLANK(7)记录删除1逻辑删除给记录添加一个删除标记,可恢复DELETE <范围>FOR 条件 例:GO 7DELE 结果:逻辑删除第7条记录2物理删除从表中彻底删除,

33、不可恢复 PACK (物理删除被逻辑删除的记录)  ZAP (无条件删除)例:删除“职工编号”空白的记录。DELETE ALL FOR 职工编号=""PACK(8)记录的寻位定位LOCATE <范围> FOR <表达式1> 继续查找命令:CONTINUE例子:在当前的表中查找姓“张”的记录。LOCATE FOR 姓名="张"(9)表文件复制COPY TO <文件名> <范围>FIELDS <字段名表>FOR <条件>WHILE<条件>例子:把当前表中“

34、应发合计”大于1000元的记录复制到新数据表GZ2中。COPY TO A:GZ2 FOR 应发合计>1000(10)从文件中追加记录APPEND FROM <文件名> FOR <条件>FIELDS<字段名表>例子:把GZ1表中“应发合计”大于1000的记录复制到当前的表后面。APPEND FROM GZ1 FOR 应发合计>1000(11)记录修改用REPLACE命令修改REPLACE <范围> <字段名1> WITH <表达式>,<字段名2>WITH<表达式2>FOR <条件&g

35、t;例子:计算各记录“应发合计”字段的值。REPLACE ALL 应发合计 WITH 职务工资+岗位津贴+保留奖金+保留津贴第四题一、数值和数学函数 1取整函数INT(<数值表达式> ) 【功能】该函数取指定数值表达式计算机结果的整数部分例:?INT(22.4+10) 322四舍五入函数 ROUND(<数值表达式1>,<数值表达式2>) 【功能】该函数根据要求保留小数位数。 例:? ROUND(123.456,0)1233. 求余数函数MOD(<数值表达式1>,<数值表达式2>) 【功能】返回<数值表达式1>除以<数

36、值表达式2>的余数。如<数值表达式2>为正,则函数值为正,否则为负。例:?MOD(6*6,10)64. 最大值,最小值函数 MAX/ MIN (<表达式1>,< 表达式2>,< 表达式3>.) 【功能】返回数值表达式中的最大值或最小值。例:?MAX(1,2,3)35. 绝对值函数ABS(<数值表达式>)【功能】返回<数值表达式>的绝对值。 例:?ABS(-21.4) 21.46.平方根函数SQRT(<数值表达式>) 【功能】该函数返回<数值表达式>的算数平方根。例:?SQRT(9) 37. 指

37、数函数EXP(<数值表达式>) 【功能】该函数返回以e为底的指数值,<数值表达式>为e的指数部分。例:?EXP(1) 2.728. 随机函数RAND(<数值表达式>)【功能】函数随机返回一个01.0之间的随机数。例:产生a-b之间的随机整数?RAND((b-a)*RAND()+a,0)二字符处理函数1.取消前后空格函数ALLTRIM(<字符表达式>)【功能】该函数取消<字符表达式>中的前后空格例:?ALLTRIM( 123 ) 1232.删除字符串前导空格函数 LTRIM(<字符表达式>)【功能】用于截去<字符表达式

38、>中左边空格。例:?”abc”+LTRIM(” de”) abcde3. 删除字符串尾部空格函数RTRIM(<字符表达式>)/TRIM(<字符表达式>) 【功能】删除字符串尾部的空格。例:STORE ”计算机 ” TO z ?TRIM(z)+”基础”计算机基础4.取左子串函数 LEFT(<字符表达式>,<数值表达式>) 【功能】截取<字符表达式>最左边的<数值表达式>个字符为一个子字符串。 例:?LEFT(“ABCDE”,2) AB5取右子串函数RIGHT(<字符表达式>,<数值表达式>) 【

39、功能】截取<字符表达式>最右边的<数值表达式>个字符为一个子字符串。例:?LEFT(“ABCDE”,2) DE6取子串函数 SUBSTR (<字符表达式>,<数值表达式1> ,<数值表达式2> ) 【功能】这里<数值表达式1>指定取子字符的起始位置,<数值表达式2>指定取字符的个数。例:?SUBSTR(“浙江宁波”,3,2) 江7. 字符串长度函数 LEN(<字符表达式>) 【功能】返回<字符表达式>的长度。输出值的类型为数值型。例: ?LEN(“HELLO”) 58空格函数 SPACE

40、 (<数值表达式>) 【功能】输出一个<数值表达式>的值为空格数的若干空格。输出值的类型为字符型。例:?”浙江”+SPACE(2+2)+”宁波” 浙江 宁波9字符串替换函数 STUFF(<字符表达式1>,<数值表达式1>,<数值表达式2>,<字符表达式2>) 【功能】可用 <字符表达式2>修改<字符表达式1>中任一部分。其中<数值表达式1>指定修改起始位置,<数值表达式2>则为要修改的字符的个数。例;?STUFF(“浙江省宁波”,5,2,” ”) 浙江宁波三日期时间函数1.系

41、统时间函数 TIME() 【功能】该函数以24小时,8个字符串格式(hh:mm:ss)时、分、秒返回当前系统时间。例:?TIME 13:20:302日期函数 DATE() 【功能】该函数返回当前系统日期。例:SET CENTURY ON?DATE ()12/05/20163.日期时间函数 DATETIME()【功能】该函数返回当前系统日期时间。例:?DATETIME()16/05/12 13:20:304.求年份函数 YEAR(<日期表达式/日期时间表达式>)【功能】该函数返回<日期表达式>或<日期时间表达式>的年份的值。输出值的类型为数值型。例:?YEAR

42、2016/05/12 20165.求月份函数 MONTH/CMONTH(<日期表达式/日期时间表达式>)【功能】该函数返回<日期表达式>或<日期时间表达式>的月份值。输出值的类型为数值型。例:?MONTH2016/05/12 056.求日期函数 DAY(<日期表达式/日期时间表达式>)【功能】该函数返回<日期表达式>或<日期时间表达式>的日期的数值。输出值的类型为数值型。例:?DAY2016/05/12 127.求时、分、秒函数HOUR(<日期时间表达式>)MINUTE(<日期时间表达式>)SEC(

43、<日期时间表达式>)【功能】这三个函数分别返回<日期时间表达式>的时、分、秒值。输出值的类型为数值型。例:?HUR(DATETIME() 21四转换函数1.字母小写转大写函数 UPPER (<字符表达式>) 【功能】该函数将<字符表达式>中所有小写字母转换成大写字母。输出值的类型为字符型。例:?UPPER(“go”) GO2字母大写转小写函数 LOWER(<字符表达式>) 【功能】该函数将<字符表达式>中所有大写字母转换成小写字母。输出值的类型为字符型。例:?LOWER(“Zhe Jiang”) zhe jiang 3字符

44、日期型转换函数CTOD(<字符表达式> ) 【功能】该函数把字符型数据转换为日期型数据。输出值的类型为日期型。例:?CTOD(“3/26/16”)+10 04/07/16 4日期字符型转换函数DTOC(<日期表达式>, 1) 【功能】该函数把日期型数据转换为字符型数据。输出值的类型为字符型。例:?DOTC(DATE() 16/05/125. 字符转换ASCII码函数 ASC (<字符表达式>) 【功能】该函数返回<字符表达式>中首字母的ASCII码字符。输出值的类型为数值型例:?ASC(“BOY”) 666ASCII码转换字符型函数CHR(<

45、;数值表达式>) 【功能】该函数把<数值表达式>的值转换为相应的ASCII码字符。输出值的类型为字符型。例:?CHR(97) a7. 数值字符型转换函数 STR(<数值表达式1>,<数值表达式2> ,<数值表达式3>) 【功能】将<数值表达式1>转换为字符型数据, <数值表达式2>是转换的长度,<数值表达式3>指定小数位数。输出值的类型为字符型。例:?STR(234.56,6,1) 234.68字符数值型转换函数 VAL (<字符表达式>) 【功能】该函数将字符型数据转换为数值型数据。输出值的

46、类型为数值型。例:?VAL(“a123”) 0.00五字段处理函数1.字段数函数FCOUNT(<工作区号>/<别名>)【功能】该函数返回指定工作区中打开表的字段数。输出值的类型为数值型。例:? FCOUNT(“XSCJ) 4打开的表文件中有4个字段2.字段名函数FIELD(<数值表达式>,<工作区号>/<别名>)【功能】该函数返回指定工作区中第<数值表达式>个字段的名字。输出值的类型为字符型。例:? FIELD (2,2) 姓名2号工作区中打开表文件的第二个字段的字段名为“姓名”3.字段长度函数FSIZE(<字段名&

47、gt;<工作区号>/<别名>)【功能】该函数返回指定工作区中指定字段的大小。输出值的类型为数值型。六记录处理函数1表起始标识测试函数 BOF (<工作区号> | <别名>) 【功能】测试表文件开始状态,并返回一个逻辑值。输出值的类型为逻辑型。例:?BOF() .T.2表结束标志测试函数EOF(<工作区号> | <别名>) 【功能】该函数用来测试表文件结束状态,如果记录指针指向变文件最后一天记录之后,函数返回.T.,否则为.F. 。输出值的类型为逻辑型。例:GO BOTTOM ?EOF() .F.3记录数函数 RECCOUN

48、T (<工作区号> | <别名>) 【功能】返回指定工作区中表文件记录总数(包括已作删除标记的记录)。如果工作区中没有打开表则返回0。输出值的类型为数值型。例:? RECCOUNT() 94当前记录号函数RECNO(<工作区号> | <别名>) 【功能】返回指定表中当前记录号。输出值的类型为数值型。例:GO TOP?RECNO()15记录大小测试函数 RECSIZE( <工作区号> | <别名> ) 【功能】返回指定工作区中表文件记录长度。输出值的类型为数值型。6.记录逻辑删除标志测试函数 DELETED(<工作区号

49、> | <别名>) 【功能】若当前记录已作删除标记,该函数返回.T.,否则返回.F.。输出值的类型为逻辑型。讨论二 结构化程序的三种基本控制结构1.讨论准备:根据讨论的目的和讨论内容的要求,设计结构化程序设计题库并在讨论课前发给学生进行小组研究学习,各小组由学生小组长负责记录成员分工,编程讨论学习情况等。2.讨论目的:使学生理解结构化程序设计的三种基本控制结构顺序、选择和循环结构,通过大量结构化程序设计练习熟悉三大基本结构的特征及基本编程方法。通过编写程序代码及程序调试,验证程序的正确性及程序算法优劣,训练分析问题解决问题能力。3.讨论内容:(1)实现选择结构的语句中,ife

50、ndif语句、do caseendcase语句的区别,并通过实例说明;(2)多分支选择结构用ifendif语句嵌套实现与用do caseendcase语句实现的区别,并通过实例说明;(3)实现循环结构的语句中,do whileenddo语句、for语句和scanendscan语句的区别及其应用范围,并通过实例说明;(4)结构化程序设计编程实现。5.讨论要求 结构化程序设计题主要以填空或改错、编程形式练习,在阅读程序的基础上理解程序算法。各小组协作完成练习并完成个人自主学习报告和小组活动记录报告。要求:(1) 个人自主学习报告中记录编写的程序代码和调试情况,针对每道结构化程序设计题,同学可以按自

51、己的算法编写代码。(2) 小组活动记录报告由各小组组长记录任务分工及讨论情况。并对成员参加讨论情况评分。第1题要求:1、给定一个年份(从键盘输入数值型数据),判断它是否闰年。2、闰年的条件是:能被4整除但不能被100整除,或能被100整除且能被400整除。注意:程序中的错误行位于“*”行下,不能添加或删除程序行。SET TALK OFFCLEAR*1*ACCEPT "Y=" TO Y*2*IF (Y%4 AND Y!%100) AND (Y%100 AND Y!%400) ? Y,"是闰年!"ELSE ? Y,"不是闰年!"ENDIF

52、SET TALK ON第2题已知:学生表结构为:学号,姓名,性别,出生年月,简历,奖学金,照片要求:显示“学生”表中的全部字段名注意:程序中的错误行位于“*”行下,不能添加或删除程序行。SET TALK OFFCLEARUSE 学生*1*FOR N = 1 TO RECCOUNT() *2* FOUND(N) ENDFORUSESET TALK ON第3题要求:从键盘输入一个数值(09),要求输出其对应的中文大写数字(零玖)。注意:仅在标记"&&"之前填写所缺代码,不能添加或删除程序。SET TALK OFFCLEARC="零壹贰叁肆伍陆柒捌玖&q

53、uot;*1*ACCEPT "N=" TO N*2*? N,"->"+ STR(C,2*N-1,2)SET TALK ON第4题输出给定的正实数值表达式的值中组成数码的最大数码和最小数码(如,数值2345.105中最大数码为5,而最小数码为0。注意:仅在标记“&&”之前填写所缺代码,不能添加或删除程序。SET TALK OFFCLEARINPUT "M=" TO MN=MDO WHILE &&_ 1N=N*10ENDDOSTORE &&_ 2 &&_ 3R= &&_ 4IF R>DD=RENDI

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论