1、国家二级 VF笔试模拟试卷 149及答案与解析 1 通过项目管理器窗口的命令按钮,不能完成的操作是 ( )。 ( A)新建文件 ( B)删除文件 ( C)添加文件 ( D)重命名文件 2 函数 MOD(-4*7,-24/4)的值是 ( )。 ( A) 8 ( B) 4 ( C) -8 ( D) -4 3 要判断数值型变量 Y是否能够被 8整除,错误的条件表达式为 ( )。 ( A) INT(Y/8)=Y/8 ( B) MOD(Y,8)=0 ( C) NT(Y/8)=MOD(Y,8) ( D) MOD(Y,8)=MOD(8,8) 4 下列关于数据环境和数据环境中两个表之间关联的陈述中,正确的是
2、( )。 ( A)数据环境是对象,关系不是对象 ( B)数据环境不是对象,关系是对象 ( C)数据环境是对象,关系是数据环境中的对象 ( D)数据环境和关系都不是对象 5 下列货币型常量的表示中,错误的是 ( )。 ( A) 1234.56 ( B) 1234.57 ( C) 1234.57 ( D) 1234.57 6 在创建数据库表结构时,为该表中一些字段建立普通索引,其目的是 ( )。 ( A)改变表中记录的物理顺序 ( B)为了对表进行实体完整性约束 ( C)加快数据库表的更新速度 ( D)加快数据库表的查询速度 7 连编应用程序能生成的文件是 ( )。 ( A) .prg文件 ( B
3、) .ext文件 ( C) .dbc文件 ( D) .pll文件 8 执行 SELECT 0选择工作区的结果是 ( )。 ( A)退出工作区 ( B)不选择工作区 ( C)选择 0号工作区 ( D)选择了空闲的最小号工作区 9 下列关于自由表的叙述,正确的是 ( )。 ( A)全部是用以前版本的 FoxPro (FoxBASE)建立的表 ( B)可以用 Visual FoxPro建立,但是不能把它添加到数据库中 ( C)自由表可以添加到数据库中,数据库表也可以从数据库中移出成为自由表 ( D)自由表可以添加到数据库中,但数据库表不可以从数据库中移出成为自由表 10 要为当前表所有职工增加 20
4、0元奖金,应该使用的命令是 ( )。 ( A) CHANGE 奖金 WITH 奖金 +200 ( B) REPLACE 奖金 WITH 奖金 +200 ( C) CHANGE ALL 奖金 WITH 奖金 +200 ( D) REPLACE ALL 奖金 WITH 奖金 +200 11 在视图设计器中有,而在查询设计器中没有的选项卡是 ( )。 ( A)排序依据 ( B)更新条件 ( C)分组依据 ( D)杂项 12 在 Visual FoxPro中下列叙述正确的是 ( )。 ( A)利用视图可以修改数据 ( B)利用查询可以修改数据 ( C)查询和视图具有相同作用 ( D)视图可以定义输出去
5、向 13 执行下列程序: CLEAR DO A RETURN PROCEDURE A S=5 DO B ?S RETURN PROCEDURE B S=S+10 RETURN ( A) 5 ( B) 10 ( C) 15 ( D)程序错误:找不到变量 14 设有两个数据库表,父表和子表之间是一对多的联系,为控制父表和子表中数据的一致性,可以设置 “参照完整性规则 ”,要求这个表 ( )。 ( A)在父表连接字段上建立普通索引,在于表连接字段上建立主索引 ( B)在父表连接字段上建立主索引,在子表连接字段上建立普通索引 ( C)在父表连接字段上不需要建立 任何索引,在于表连接字段上建立普通索引
6、( D)在父表和子表的连接字段上都要建立主索引 15 对于只有两种取值的字段,最好使用哪种数据类型 ( )。 ( A)日期型 ( B)字符型 ( C)数值型 ( D)逻辑型 16 在表单设计中, This关键字的含义是指 ( )。 ( A)当前对象的直接容器对象 ( B)当前对象所在的表单 ( C)当前对象 ( D)当前对象所在的表单集 17 检索职工表中年龄大于 50的职工姓名,正确的命令是 ( )。 ( A) SELECT 姓名 WHERE 年龄 50 ( B) SELECT 姓名 FROM 职工 FOR 年龄 50 ( C) SELECT 姓名 FROM 职工 SET 年龄 50 ( D
7、) SELECT 姓名 FROM 职工 WHERE 年龄 50 18 当变量 K在奇偶数之间变化时,下列程序的输出结果为 ( )。 CLEAR X=0 DO WHILE X 6 IF INT(X/2)=X/2 ?”CHINA, ENDIF ?”中国 ” X=X+1 ENDDO ( A) CHINA 中国 中国 连续显示 3次 ( B)中国 中国 CHINA 连续显示 3次 ( C) CHINA 中国 中国 连续显示 2次 ( D)中国 中国 CHINA 连续显示 2次 19 SQL用于显示部分查询结果的 TOP短语,必须与下列哪个短语同时使用才有效( )。 ( A) HAVING ( B) D
8、ISTINCT ( C) ORDER BY ( D) GROUP BY 20 SQL语句 DELETE FROM学生 WHERE年龄 25的功能是 ( )。 ( A)删除学生表 ( B)删除学生表中的 年龄字段 ( C)将学生表中年龄大于 25的记录逻辑删除 ( D)将学生表中年龄大于 25的记录物理删除 21 在结构化设计方法中,数据流图表达了问题中的数据流与加工间的关系,并且每一个 _实际上对应一个处理模块。 22 结构化程序设计的 3种基本结构分别是顺序、选择和 _。 23 二分法查找仅限于这样的表:表中的数据元素必须有序,其存储结构必须是_。 24 一个模块直接调用的其他模块个数称为
9、_。 25 数据库系统中实现各种数据管理功能的核心软件是 _。 26 项目管理器中,用于显示应用程序中所有的文件的是 “_”选项卡。 27 自由表与数据库表相比较,在数据库中可以建立 _索引,而在自由表中不能建立。 28 “报表控件 ”工具栏中的 “图片 /ActiveX绑定 ”控件用于显示图片和 _字段的内容。 29 在 Visual FoxPro中,用来确定复选框是否被选中的属性是 _。 30 利用 SQL语句的定义功能,建立一个学生表文件,其中为学号建立主索引,年龄的默认值为 18,语句 格式为: CREATE TABLE学生 (; 学号 C(5)_; 年龄 I DEFAULT 18)
10、31 通过 Visual FoxPro的视图,不仅可以查询数据库表,还可以 _数据库表。 32 为了通过视图更新基本表中的数据,需要在视图设计器界面的左下角选中_复选框。 33 使用 SQL语句实现将一条新的记录插入 “学生 ”表中: INSERT_学生 (学号,姓名 )VALUES(“9801”, “李峰 ”) 34 当前目录下有 “选课表 ”文件,要求查找既选修了 “计算机 ”, 又选修了 “日语 ”的学生号,则语句 为: SELECT A学号 FROM选课表 A,选课表 B; WHERE A学号 =B学号 AND; ” A课程名称 =“计算机 ”AND_ 35 在成绩表中,检索选修 3门
11、以上课程的学生及格学科的总成绩。成绩表中包含学号、 姓名、课程名和成绩 4个字段。请将下列 SQL语句补充完整。 SELECT 学号, SUM(成绩 )FROM 成绩表; WHERE成绩 =60; GROUP BY学号; _COUNT(*) =3 国家二级 VF笔试模拟试卷 149答案与解析 1 【正确答案】 D 【试题解析】 在项目管理器窗口上有 6个按钮:新建、添加、修改、浏览 (运行 )、移去和连编按钮,都不具有重命名文件的功能。 2 【正确答案】 D 【试题解析】 MOD函数是求余函数,格式是 MOD(数值表达式 1,数值表达式 2 )。功能是:返回两个数值相除后的余数。数值表达式 1
12、是被除数,数值表达式 2是除数。余数的正负号与除数相同。如果被除数与除数同号,那么函数值即为两数相除的余数;如果被除数与除数异号,则 函数值为两数相除的余数再加上除数的值。 题干中的被除数是 -4*7即 -28,除数是 -24、 4 即 -6,被除数与除数同号,所以函数值为两数相除的余数,即 -4。 3 【正确答案】 C 【试题解析】 INT()函数的功能是返回指定数值表达式的整数部分。 MOD()函数的功能是返回两个数值相除后的余数。现在假设 Y=16,则 INT(Y/8)=2, Y/8=2,MOD(Y, 8)=0, MOD(8, 8)=0。因为 INT(Y/8)=2, MOD(Y, 8)=
13、0,所以错误的条件表达式为选项 C)。 4 【正确答案】 C 【试题解析】 为表单建立数据环境,可以方便设置控件与数据之间的绑定关系。数据环境中能够包含表单所需要的一些表、视图以及表之间的关联。 数据环境是一个对象,有自己的属性、方法和事件。常用的两个数据环境属性是AutoOpenTables和 AutoCloseTables。 关系是数据环境中的对象,它有自己的属性、方法和事件。编辑关联主要通过设置关联的属性来完成。 5 【正确答案】 D 【试题解析】 货币型常量用来表示货币值,其书写格式与数值型常量类似,但要加一个前置的美元符号 ($),货 币在存储和计算时,采用 4位小数如果一个货币型常
14、量多于 4位小数,那么系统会自动将多余的小数位四舍五入。货币型常量没有科学记数法形式,所以选项 D)是错误的。 6 【正确答案】 D 【试题解析】 在一个表中可以建立多个普通索引、多个惟一索引、多个候选索引,但只能建立一个主索引。 一般来说,主索引是用于主关键字字段;候选索引用于那些不作为主关键字但字段值又必须惟一的字段;普通索引用于一般的提高查询速度;惟一索引用于一些特殊的处理程序设计。 7 【正确答案】 B 【试题解析】 如果程序运行 正确,就可以量终连编成一个应用程序文件了。应用程序文件包括项目中所有 “包含 ”文件。应用程序连编结果有两种文件形式。 应用程序文件 (.app):需要在
15、Visual FoxPro中运行; 可执行文件 (.exe):需要在Windows中运行。 8 【正确答案】 D 【试题解析】 指定工作区的命令是; SELECTnWorkArea|cTableAlias 其中,参数 nWodcArea是一个大于等于 O的数字,用于指定工作区号,最小的工作区号是1,最大的工作区号是 32767,如果这里指定为 0,则选择编号最 小的可用工作区(即尚未使用的工作区 ):如果在某个工作区中已经打开了表,若要回到该工作区操作该表,可以使用参数 cTableAlias,该参数是已经打开的表名或表的别名。 9 【正确答案】 C 【试题解析】 所谓自由表,就是不属于任何数
16、据库的表,所有由 FoxBASE或早期版本的 FoxPro创建的数据库文件 (.dbf)都是自由表。在 Visual FoxPro中创建表时,如果当前没有打开数据库,则创建的表也是自由表可以将自由衷添加到数据库中,使之成为数据库表;也可以将数据库表从数据库中移出,使之成为自由表。 10 【正确答案】 D 【试题解析】 可以使用 REPLACE命令直接用指定表达式或值修改记录,REPLACE命令的常用格式是: REPLACE FieldName1 WITH eExpmssion1,FieldName2 WITH eExpression2 FOR IExpressionl 该命令的功能是直接利用表
17、达式 eExpression的值替换字段 FieldName的值,从而达到修改记录值的目的。该命令一次可以修改多个字段 (eExptessionl, eExpression2)的值,如果不使用 FOR短语,则默认修改的是当前记录:如果使用了 FOR短语,则修改逻辑表达式 IExpmssion1为真的所有记录。根据题意,要为当前表所有职工增加 200元奖金,应该使用的命令是: REPLACE ALL奖金 WITH奖金 +200。 11 【正确答案】 B 【试题解析】 在视图设计器界面中,有 7个选项卡,它们分别是:字段、连接、筛选、排序依据、分组依据、杂项和更新条件;而查询设计器界面中,有 6个
18、选项卡,它们分别是:字段、连接、筛选、排序依据、分组依据和杂项。所以查询设计器没有 “更新条件 ”选项卡。 12 【正确答案】 A 【试题解析】 视图设计器和查询设计器的使用方式几乎完全一样。主要有 3点不同: 查询设计器的结果是将查询以 QPR为扩展名的 文件形式保存在磁盘中:而视图设计完后,在磁盘上拢不到类似的文件,视图的结果保存在数据库中。 由于视图是可以用于更新的,所以它有更新属性需要设置,为此在视图设计器中多一个 “更新条件 ”选项卡。 在视图设计器中没有 “查询去向 ”的问题。 13 【正确答案】 C 【试题解析】 程序 A中把初始值 5赋给变量 S,然后运行程序 B,程序 B执行
19、S=S+10,执行完毕后,变量 S的值为 15,接着返回到程序 A,最后输出。所以程序的运行结果是 15。 14 【正确答案】 B 【试题解析】 在关系数据库中,参照完整性是 一个非常重要的概念。在建立参照完整性之前,首先要建立表之间的联系。最常见的联系是一对多的联系,在关系数据库中通过连接字段来体现和表示。连接字段在父表中是主关键字,即主索引,在子表中是外部关键字,即普通索引。 15 【正确答案】 D 【试题解析】 逻辑型数据只有逻辑真和逻辑假两个值。逻辑真的常量表示形式有: .T.、 .t.、 .Y.和 .y.,逻辑假的常量表示形式有 .F.、 .f.、 .N和 .n.。前后两个句点作为逻
20、辑型常量的定界符是必不可少的,否则被误认为变量名。所以对只有两种取值的字段,最好使用逻辑型数 据类型。 16 【正确答案】 C 【试题解析】 在 VisualFoxPro中, Patent表示当前对象的直接容器对象,Thisform表示当前对象所在的表单; This表示当前对象; Thisformset表示当前对象所在的表单集。 17 【正确答案】 D 【试题解析】 简单查询基于一个关系,即仅对一个表进行查询,可以包含简单的查询条件。 SELECT字段名列表 FROM表名 WHERE查询条件 其中, “字段名列表 ”指查询结果中包含的字段名,多个字段名之间用半角逗号 (, )分隔: “查询条
21、件 ”是一个逻辑表达式,它是由多个表达式通过逻辑运算符 (NOT、AND、 OR)连接而成的。关系表达式中可以使用的关系运算符见下表。18 【正确答案】 A 【试题解析】 DOWHILE-ENDDO语句的格式: DO WHILE条件 命令序列 ENDDO 执行该语句时,先判断 DO WHILE处的循环条件是否成立,如果条件为真,则执行 DO WHILE与 ENDDO之间的 命令序列 (循环体 )。当执行到 ENDDO时,返回到 DO WHILE,再次判断循环条件是否为真,以确定是 否 再次执行循环体。若条件为假,则结束该循环语句,执行 ENDDO后面的语句。 先将 0赋给变量 x,使用一个 D
22、O WHILE循环语句来操作,判断条件是变量 x是否小于 6,如果大于或等于 6 ,则退出循环,否则执行循环体通过 INT(取整函数 )取得 x除以 2的值的整数部分,判断该整数部分是否 等于 x除以 2的值,如果相等,则输出 “CHINA”,然后输出 “中国 ”,再执行X=X+1,重复此循环体的操作 。所以 X=0时, INT(X/2)=0, X/2=0,输出 “CHINA”,然后输出 “中国 ”;执行 X=X+1I,此时 X=1, INT(X/2)=0, x/=0.5,这两个值不相等,输出 “中国 ”。以此类推,最终结果是 “CHI NA 中国 中国 ”连续显示 3次。 19 【正确答案】
23、 C 【试题解析】 掌握基本的 SQL查询语句中,各个短语的含义。 TOP短语用来显示查询结果的部分记录,不能单独使用,必须与排序短语 ORDER BY一起使用才有效。 20 【正确答案】 C 【试题解析】 DELETE短语是 SQL的数据操作功能,用来逻辑删除表中符合条件的记录,通过 WHERE短语指定删除条件。 SQLDELETE删除功能与表操作删除记录功能一样,都只能逻辑删除表中记录,要物理删除,同样需要使用PACK命令。 21 【正确答案】 加工 【试题解析】 数据流图是从数据传递和加工的角度,来刻画数据流从输入到输出的移动变换过程,其中的每一个加工对应一个处理模块。 22 【正确答案
24、】 重复 (或循环 ) 【试题解析】 结构化程序设计包括 3种基本的结构:顺序结构、选择结构和重复结构 (循环结构 )。利用这 3种结构就足以表达出各种其他形式结构的程序设计方法,其中利用循环结构,可以简化大量的程序执行。 23 【正确答案】 顺序存储 (顺序方式存储 ) 【试题解析】 二分法查找对表的要求是有序的顺序表,即第一要求是数据元素有序,第二要求是按顺序方式存储。 24 【正确答案】 扇出 【试题解析】 在结构图中,调用一个给定模块的模块个数称为扇入,一个模块直接调用的其他模块个数称为扇出。 25 【正确答案】 数据库管理系统 【试题解析】 数据库管理系统是数据库的管理机构,它是一种
25、系统软件,负责数据库中的数据组织,数据操纵、数据维护、控制及保护和数据服务等。 26 【正确答案】 全部 【试 题解析】 项目管理器一共有 6个选项卡,其中 “数据 ”、 “文档 ”、 “类 ”、 “代码 ”和 “其他 ”5个选项卡用来分类显示各种文件, “全部 ”选项卡则显示所有的文件,实现对它们的管理。 27 【正确答案】 主 【试题解析】 自由表不能建立字段级规则和约束等。事实上,数据库表与自由表相比,数据库表具有以下特点 : 数据库表可以使用长表名,在表中可以使用长字段名。 可以为数据库表中的字段指定标题和添加注释。 可以为数据库表的这段指定默认值和输入掩码。 数据库 表的字段有默认的
26、控件类。 可以为数据库表规定字段级规则和记录级规则数据库表支持主关键字、参照完整性和表之间的 关联。 支持 INSERT、 UPDATE和 DELETE事件的触发器。 28 【正确答案】 通用型 【试题解析】 Visual FoxPro在打开 “报表设计器 ”窗口的同时也会打开一个 “报丧控件 ”工具栏。该工具栏有多个图标按钮,每个按钮有不同的功能。其中 “图片/ActiveX绑定控件 ”按钮的功能是用于显示图片和通用型字段的内容。 29 【正确答案】 Value 【试题解析】 复选框用于标识一个两值状态,如真 ( T )或假 ( F )。当处于选中状态时,夏选框内显示一个对勾:否则,复选框内
27、为空白复选框可以通过Value属性来设置或返回复选框的状态。 30 【正确答案】 PRIMARY KEY 【试题解析】 在 Visual FoxPro中可以通过 SQL的 CROAT TABLE命令建立表。其中,通过 PRIMARY KEY短语可以为指定字段创建一个主索引,索引标识名与字段名相同。 31 【正确答案】 操作 (或更新 ) 【试题解析】 在 Visual FoxPro中,视图是可以更新的,但是这种更新是否反映在基本表中则取决于视图更新属性的设置。在关系数据库中,视图始终不曾真正地含有数据,它总是原来表的一个窗口。所以,虽然视图可以像表一样进行各种查询,但是插入、更新、删除操作在视
28、图上却有一定的限制。一般情况下,当一个视图是由单个表导出时可以进行插入和更新操作,但不能进行删除操作:当视图是从多个表导出时,插入,更新和删除操作都不允许进行。 32 【正确答案】 发送 SQL更新 【试题解析】 视图是根据基本表派生出来的,但是在 Visual FoxPro中它已经不完全是操作基本表的窗口。在一 个活动周期内视图和基本表已经成为两张表,默认对视图的更新不反映在基本表中,对基本表的更新在视 图中也得不到反映。但是在关闭数据库后视图中的数据将消失,当再次打开数据库时视图从基本表中重新 检囊数据。所以默认情况下,视图在打开时从基本表中检索数据,然后构成一个独立的临时表供用户使用 。
29、 为了通过视图能够更新基本表中的数据,需要在视图设计器界面的左下角中勾选“发 SQL更新 ”夏选 框。 33 【正确答案】 INTO 【试题解析】 INSERT命令用于在一个表中添加新记录,然后给新记录的字段赋值。格式为: INSERT INTO表名 (列名 1,列名 2,.) VALUES(表达式 1,表达式 2,.) 其中, INTO表名指出了要添加新记录的表名;列名 1,列名 2,.是字段名表,插入记录不完整时使用 : VALUES指出要输入到新记录的指定字段中的数据值; 如果省略前面的字段名表,将按照表结构中定义的顺序依次指定每个字段的值。添加新记录后,该字 段所包含的数值就是 VAL
30、UES子句中所包含的数据。 34 【正确答案】 B课程名称 =“日语 ” 【试题解析】 一般的查询中,别名并不是必须的,但是在自连接查询中,别名是必不可少的。 SQL不仅可以对多个关系实行连接操作,也可以将同一关系与其自身进行连接,这种连接称为自连接 在可以进行这种自连接操作的关系上,实际存在着一种特殊的递归联系,即关系中的一些元组,根据出自 同一值域的两个不同的属性,可以与另外一些元组有一种对应关系 (一对多的联系 )。 35 【正确答案】 HAVING 【试题解析】 在实际的应用中,除了简单的计算查询外,我们 还可以加上GROUP BY子句进行分组计算查询。 通常来说,一个计算函数的范围是满足 WHERE于句指定条件的所有记录。当加上 GROUP BY子句后,系统 会将查询结果按指定列分成集合组。当一个计算函数和一个 GROUP BY子句一起使用时,计算函数的范围变 为每组所有的记录。也就是说,一个结果是由组成一组的每个记录集合产生的。 另外,使用 HAVING子句可以对这些组进一步加以控制用这个子句定义这些组所必须满足的条件,以 便将其包含在结果中。 本题中,根据学号将学生记录分组,然后利用 SQL的统计函数 COUNT(),统计选修 3门课程以上的学生 记录,并利用 SUM()函数将及格科目的分数求和。