点击查看:2015年9月计算机二级VFP模拟试题-计算机二级VF最新试题
2015年计算机二级考试《VFP》全真模拟试题(1)
一、选择题
1设X=〝11〞,Y=〝1122″,下列表达式结果为假的是( )。
A.NOT(X==Y)AND(X$Y)
B.NOT(X$Y)OR(X<>Y)
C.NOT(X>=Y)
D.NOT(X$Y)
参考答案:D
参考解析:字符串精确比较运算符(==),只有当两个字符串完全相同时,才会是逻辑真,所以X==Y为逻辑假;子串包含测试运算符($),如果运算符前的字符串是运算符后的字符串的-个子字符串,则为逻辑真,所以X$Y为逻辑真;大于等于运算符(>=),是对两个字符串自左向右逐个进行比较,-旦发现两个对应字符不同,就根据两个字符的排序序列决定两个字符串的大小,x、Y的前两个字符相胃。所以比较第3个字符,由于x只有两个字符,则第3位x小于Y.所以x小于Y,故X>=Y为逻辑假;X<>Y为逻辑真。由以上可得:A)选项中,由于.NOT的优先级高于AND。所以先比较NOT(X==Y)为逻辑真,由于X$Y也为逻辑真,所以NOT(X==Y)AND(X$Y)为逻辑真。B)选项中。由于NOT的优先级高于0R,所以先比较NOT(X$Y)为逻辑假,由于X<>Y也为逻辑真,所以NOT(X$Y)OR(X<>Y)为逻辑真。C)选项中,X>=Y为逻辑假,则NOT(X>=Y)为逻辑真。D)选项中,X$Y也为逻辑真,则NOT(X$Y)为逻辑假。
2数据库(DB)、数据库系统(DBS)和数据库管理系统(DBMS)三者之间的关系是( )。
A.DBS包括DB和DBMS
B.DBMS包括DB和DBS
C.DB包括DBS和DBMS
D.DBS就是DB,也就是DBMS
参考答案:A
参考解析:数据库(DB)是存储在计算机存储设备上的结构化的相关数据集合;数据库管理系统(DBMS)是为数据库的建立、使用和维护而配置的软件。数据库和数据库管理系统都属于数据库系统(DBS)。
3设有学生(学号,姓名,性别,出生日期)和选课(学号,课程号,成绩)两个关系,并假定学号的第3、4位为专业代码。要计算各专业学生选修课程号为“101”课程的平均成绩,正确的SQL语句是( )。
A.SELECT专业AS SUBS(学号,3,2),平均分AS AVG(成绩)FROM选课WHERE课程号=〝101〞GROUP BY专业
B.SELECT SUBS(学号,3,2)AS专业,AVG(成绩)AS平均分FROM选课WHERE课程号=〝101〞GROUP BY 1
C.SELECT SUBS(学号,3,2)AS专业,AVG(成绩)AS平均分FROM选课WHERE课程号=〝101〞OR-DER BY专业
D.SELECT专业AS SUBS(学号,3,2),平均分AS AVG(成绩)FROM选课WHERE课程号=〝101〞ORDER BY 1
参考答案:B
参考解析:SUBSTR(<字符表达式>,<起始位置>[,<长度>])为取子串函数,从指定表达式值的指定起始位置取指定长度的子串作为函数值。要计算各专业学生选修课程号为“l01”课程的平均成绩,应按学号分组,即GROUP BY1。因此B)为正确选项。
4在SQL SELECT语句中为了将查询结果存储到临时表应该使用短语( )。
A.T0 CURSORB.INTO CURSORC.INTO DBFD.TO DBF
参考答案:B
参考解析:在SQL查询语句的尾部添加INTO CUR-SOR<临时表名>可以将查询的结果放人指定的临时表中。此操作通常是将-个复杂的查询分解,临时表通常不是最终结果,可以接下来对lf缶时表操作得到最终结果。生成的临时表是当前被打开的并且是只读的,关闭该文件时将自动删除。所以B)为正确选项。
5设有选课(学号,课程号,成绩)关系,插入一条记录到“选课”表中,学号、课程号和成绩分别是 “02080111”、“103”和80,正确的SQL语句是( )。
A.INSERT INTO选课VALUES(〝02080111〞,〝103〞,80)
B.INSERT VALUES(〝02080111〞,〝103〞,80)TO选课(学号,课程号,成绩)
C.INSERT VALUES(〝02080111〞,〝103〞,80)INTO选课(学号,课程号,成绩)
D.INSERT INT0选课(学号,课程号,成绩)FROM VALUES(〝02080111〞,〝103〞,80)
参考答案:A
参考解析:插入数据的格式为INSERT INTO<表名>[(字段名1[,字段名2,…])]VALUES(字段值1[,字段值2,…])。当插入的不是完整的记录时,可以通过字段名1,字段名2……来指定字段;VALUES(字段值1[,字段值2,…])给出具体的记录值。B)、C)、D)选项的格式错误。
6以下是与设置系统菜单有关的命令,其中错误的是( )。
A.SET SYSMENU DEFAULT
B.SET SYSMENU TO DEFAULT
C.SET SYSMENU NOSAVE
D.SET SYSMENU SAVE
参考答案:A
参考解析:设置系统菜单的命令格式:SET SYSMENU ON I OFF l AUTOMATIC I TO[<>]l TO[<>1]1T0[<>]I SAVE I NOSAVE。所以B)选项的SET SYSMEMU TODEFAULT、C)选项的SET SYSMENU NOSAVE、D)选项的SETSYSMENU SAVE都符合这个格式,A)选项中缺少TO关键字,格式不正确。
7Modify Command命令建立的文件的默认扩展名是( )。
A.prgB.appCNaNdD.exe
参考答案:A
参考解析:Modify Command命令用于建立和修改程序文件。程序文件的默认扩展名是prg。
8设置表单标题的属性是( )。
A.TitleB.TextC.BiaotiD.Caption
参考答案:D
参考解析:表单的Caption属性指明显示于表单标题栏上的文本。
9执行如下命令序列后,最后一条命令的显示结果是( )。
DIMENSION M(2,2)
M(1,1)=10
M(1,2)=20
M(2,1)=30
M(2,2)=40
?M(2)
A.变量未定义的提示B.10C.20D..F.
参考答案:C
参考解析:创建数组的命令格式有两种DIMENSION<数组名>(<下标上限l>[,<下标上限2])[…]DECLARE<数组名>(<下标上限l>[,<下标上限2])[…]两种格式的功能完全相同。数组创建后,系统自动给每个数组元素赋以逻辑假.F.。可以用-维数组的形式访问二维数组。本题中M(2)与M(1,2)是同-变量,所以M(2)的值为20。
10SQL语句中删除视图的命令是( )。
A.DROP TABLEB.DROP VIEWC.ERASE TABLED.ERASE VIEW
参考答案:B
参考解析:视图由于是从表派生而来的,所以不存在修改结构的问题,但是视图可以删除,其命令格式为:DROPVIEW<视图名>。因此B)选项正确。
11在Visual FoxPro中,报表的数据源不包括( )。
A.视图B.自由表C.查询D.文本文
参考答案:D
参考解析:数据库的报表总是与-定的数据源相联系,在设计报表时,首先要确定报表的数据源。报表的数据源通常是数据库中的表或自由表,也可以是视图、查询或临时表。当数据源中的数据更新之后,使用同-报表文件打印的报表将反映新的数据内容,但报表的格式不变。文本文件不能作为报表的数据源,因此本题选D)。
12假定一个表单里有一个文本框Text1和一个命令按钮组CommandGroup1。命令按钮组是一个容器对象,其中包含Command1和Command2两个命令按钮。如果要在Command1命令按钮的某个方法中访问文本框的Value属性值,正确的表达式是( )。
A.This.ThisForm.Text1.Value
B.This.Parent.Parent.Text1.Value
C.Parent.Parent.Text1.Value
D.This.Parent.Text1.Value
参考答案:B
参考解析:在容器的嵌套层次关系中,引用其中某个对象,需指明对象在嵌套层次中的位置。经常要用到的关键字是:Parent(对象的直接容器对象,即父对象);This(当前对象);ThisForm(当前表单);ThisFormSet(当前表单集)。本题this.Parent是CommandGmupl,this.Parent.Parent.是CommandGroupl的Parent,即forml。所以要在Commandl命令按钮的某个方法中访问文本框的Value属性值,正确的表达式是This.Parent.Parent.Textl.Value,即选项B)。
13设置文本框显示内容的属性是( )。
A.ValueB.CaptionC.NameD.InputMask
参考答案:A
参考解析:文本框的Value属性是文本框的当前内容;Name属性指定在代码中用以引用对象的名称;InputMask属性指定在-个文本框中如何输入和显示数据;文本框无Caption属性。
14向一个项目中添加一个数据库,应该使用项目管理器的( )。
A.“代码”选项卡B.“类”选项卡C.“文档”选项卡D.“数据”选项卡
参考答案:D
参考解析:“项目管理器”窗口是VisualFeffiPm开发人员的工作平台,它包括6个项卡:数据、文档、类、代码、其他、全部。“数据”选项卡包括了-个项目中的所有数据数据库、自由表、查询和视图。添加-个数据库,应该使用‘数据”选项卡。。
15下列关于栈的叙述正确的是( )。
A.栈按“先进先出”组织数据
B.栈按“先进后出”组织数据
C.只能在栈底插入数据
D.不能删除数据
参考答案:B
参考解析:栈是按“先进后出”的原则组织数据的,数据的插入和删除都在栈顶进行操作。
16在下面的Visual FoxPro表达式中,运算结果为逻辑真的是( )。
A.EMPTY(.NULL.)
B.LIKE(ˋxy? ˊ,ˋxyzˊ)
C.AT(ˋxyˊ,ˋabcxyzˊ)
D.ISNULL(SPACE(0))
参考答案:B
参考解析:EMPTY(<表达式>)根据指定表达式的运算结果是否为“空”值,返回逻辑真(.T.)或逻辑假(.F.),这里所指的“空”值与NULL值是两个不同的概念,函数EMPTY(.NULL.)的返回值为逻辑假,所以A)选项为逻辑假;LIKE(<字符串表达式l>,<字符串表达式2>)比较两个字符串对应位置上的字符,若所有对应字符都相匹配:函数返回逻辑真,否则返回逻辑假,其中字符串表达式1中可包含通配符*和?,*表示若干个任意字符,?表示任意-个字符。,所以LIKE(xy?’,xyz‘)为逻辑真;AT(<字符串表达式1>,<字符串表达式2>)的函数值为数值型,C)选项不正确;IS-NULL(<表达式>)判断-个表达式的运算结果是否为NULL值,若是NULL值则返回逻辑真,否则返回逻辑假,SPACE(<数值表达式>)返回由指定数目的空格组成的字符串,所以SPACE(0)为空字符串,ISNULL(SPACE(O))为逻辑假。
17数据流图中带有箭头的线段表示的是( )。
A.控制流B.事件驱动C.模块调用D.数据流
参考答案:D
参考解析:数据流图中带箭头的线段表示的是数据流,即沿箭头方向传送数据的通道,-般在旁边标注数据流名。
18为了隐藏在文本框中输入的信息,用占位符代替显示用户输入的字符,需要设置的属性是( )。
A.ValueB.ControlSourceC.InputMaskD.PasswordChar
参考答案:D
参考解析:文本框的Value属性是文本框的当前内容;ControlSource属性为文本框指定-个字段或内存变量,运行时,文本框首先显示该变量的内容;InputMask属性指定在-个文本框中如何输入和显示数据;PasswordChar属性指定文本框控件内是显示用户输入的字符还是显示占位符;指定用作占位符的字符。
19检索“投中3分球,,小于等于5个的运动员中“得分”最高的运动员的“得分”,正确SQL命令是( )。
A.SELECTMAX(得分)得分FROM运动员WHERE投中3分球<=5
B.SELECTMAX(得分)得分FROM运动员WHEN投中3分球<=5
C.SELECT得分=MAX(得分)FROM运动员WHERE投中3分球<=5
D.SELECT得分=MAX(得分)FROM运动员WHEN投中3分球<=5
参考答案:A
参考解析:本题考查的简单计算查询。求最大值的函数是MAX(),使用计算函数后,会改变原来的用于计算的字段名,如果要指定新的字段名,可以在该计算函数后通过AS短语指定新的字段名,也可以省AS短语直接输入新字段名做为输出显示的字段名称。本题选项C)和D)中,使用计算函数的表达方式错误;而选项B)中,条件短语的关键字出错,应该是WHERE,而不是WHEN,正确答案是A)。
20设有订单表order(订单号,客户号,职员号,签订日期,金额),查询2011年所签订单的信息,并按金额降序排序,正确的SQL命令是( )。
A.SELECT*FR0M orderWHEREYEAR(签订日期)=2011ORDERBY金额DESC
B.SELECT*FROM orderWHILEYEAR(签订日期)=2011ORDERBY金额ASC
C.SELECT*FROM orderWHEREYEAR(签订日期)=2011ORDERBY金额ASC
D.SELECT*FROM orderWHILEYEAR(签订日期)=2011ORDERBY金额DESC
参考答案:A
参考解析:本题考查的SQL排序查询。根据SQL查询语句的基本结构,可以很容易发现选项B)和选项D)中,用来指定查询条件的WHERE关键字错误,首先排除这两个选项,然后,根据题目要求,需要按金额降序排序查询结果,在排序语句中,ASC短语表示升序排序,是默认的排序方式,可省;而DESC短语表示降序排序,不可以缺少,选项A)和C)中,A)采用的是降序排序,与题目要求相符,正确答案为A)。
21在Visual FoxPro中,要运行菜单文件menu1.mpr,可以使用命令( )。
A.DO menu1B.DOmenu1.mprC.DO MENU menu1D.RUN menu1
参考答案:B
参考解析:运行菜单可以使用命令格式:DO<文件名>,但文件名的扩展名.mpr不能省。
22在面向对象方法中,不属于“对象”基本特点的是( )。
A.一致性B.分类性C.多态性D.标识唯一性
参考答案:A
参考解析:对象有如下-些基本特点:标识唯-性、分类性、多态性、封装性、模块独立好。所以选择A)。
23设有学生(学号,姓名,性别,出生日期)和选课(学号,课程号,成绩)两个关系,查询选修课程号为“101”课程得分最高的同学,正确的SQL语句是( )。
A.SELECT学生.学号,姓名FROM学生,选课WHERE学生.学号=选课.学号AND课程号=”101”AND成绩>=ALL(SELECT成绩FROM选课)
B.SELECT学生.学号,姓名FROM学生,选课WHERE学生.学号=选课.学号AND成绩>=AIJL (SELECT成绩FROM选课WHERE课程号=”101”)
C.SELECT学生.学号,姓名FROM学生,选课WHERE学生.学号=选课.学号AND成绩>=ANY (SELECT成绩FROM选课WHERE课程号=”101”)
D.SELECT学生.学号,姓名FROM学生,选课WHERE学生.学号=选课.学号AND课程号=”101”AND成绩>=ALL(SELECT成绩FROM选课WHERE课程号=”101”)
参考答案:D
参考解析:查询的基本形式由SELECT-FROM-WHERE查询块组成。其中SELECT说明要查询的字段,FROM说明要查询的字段来自哪个表或哪些表,WHERE说明查询条件,即选择元组的条件。内层“SELECT成绩FROM选课WHERE课程号=”101””语句查询出了选修课程号为101的成绩,外层格式正确的为D)选项。
24软件设计中模块划分应遵循的准则是( )。
A.低内聚低耦合
B.高内聚低耦合
C.低内聚高耦合
D.高内聚高耦合
参考答案:B
参考解析:软件设计中模块划分应遵循的准则是高内聚低耦合、模块大小规模适当、模块的依赖关系适当等。模块的划分应遵循-定的要求,以保证模块划分合理,并进-步保证以此为依据开发出的软件系统可靠性强,易于理解和维护。模块之间的耦合应尽可能的低,模块的内聚度应尽可能的高。
25在SQL的ALTER TABLE语句中,为了增加一个新的字段应该使用短语( )。
A.CREATEB.APPENDC.COLUMND.ADD
参考答案:D
参考解析:向表中添加新的字段和新的索引,其命令格式为:ALTER TABLE<表名>ADD[COLUMN]<字段类型>[<长度>[,<小数位数>])][NULLINOTNULL][CHECK<逻辑表达式1>[ERROR<字符型文本提示信息>]][DEFAULT<默认值表达式>][ADD PRIMARYKEY<索引表达式2>TAG<索引名1>][ADDUNIQUE<索引表达式3>TAG<索引名2>]增加-个新的字段应该使用ADD短语,即D)选项正确。
26有如下赋值语句,结果为“大家好”的表达式是( )。
a=〝你好〞
b=〝大家〞
A.b+AT(a,1)
B.b+RIGHT(a,1)
C.b+LEFT(a,3,4)
D.b+RIGHT(a,2)
参考答案:D
参考解析:LEVI"(<字符表达式>,<数值表达式>)的功能是从字符表达式左边开始,截取<数值表达式》指定长度的字符串。 RIGHT(<字符表达式>,<数值表达式>):返回-个字符串右边的若干字符,返回值是字符型。-个汉字在计算机中占两个字符,如果要取得-个完整的汉字字符,必须指定字符长度为2.AT(<字符串表达式l>,<字符串表达式2>)的孟数值为数值型。A)选项的函数返回值是数值型,答案不正确;B)选项中,由于中文字符在Visual FoxPro中占两个字符,所以RIGHT(a1)也不正确,C)选项中的表达式格式不正确,D)选项中b的值为“大家”,RIGHT(a,2)的值为“好”,所以D)选项答案正确。
27在Visual FoxPro中,“表”是指()。
A.报表B.关系C.表格控件D.表单
参考答案:B
参考解析:在Visual FoxPro中,-个“表”就是-个关系。
28将学号为“02080110”、课程号为“102”的选课记录的成绩改为92,正确的SQL语句是( )。
A.UPDATE选课SET成绩WITH 92 WHERE学号=”02080110”AND课程号=〝102〞
B.UPDATE选课SET成绩=92 WHERE学号=”02080110”AND课程号=〝102〞
C.UPDATE FROM选课SET成绩WITH 92 WHERE学号=”02080110”AND课程号=〝102〞
D.UPDATE FROM选课SET成绩=92 WHERE学号=”02080110”AND课程号=〝102〞
参考答案:B
参考解析:更新数据的命令格式为:UPDATE表名SET字段名1=表达式1[,字段名2=表达式2…][WHERE条件]。-般使用WHERE子句指定更新的条件,并且-次可以更新多个字段;如果不使用WHERE子句,则更新全部记录。本题将学号为“02080110”、课程号为“102”的选课记录的成绩改为92,正确的命令格式为选项B)。
29设有学生表S(学号,姓名,性别,年龄),查询所有年龄小于等于18岁的女同学、并按年龄进行降序排序生成新的表WS,正确的SQL命令是( )。
A.SELECT*FROM S WHERE性别=ˋ女ˊAND年龄<=18OREDER BY 4 DESC INTO TABLE WS
B.SELECT*FROM S WHERE性别=ˋ女ˊAND年龄<=18OREDER BY年龄INTO TABLE WS
C.SELECT*FROM S WHERE性别=ˋ女ˊAND年龄<=18OREDER BYˋ年龄ˊDESC INTO TABLE WS
D.SELECT*FROM S WHERE性别=ˋ女ˊ0R年龄<=18OREDER BYˋ年龄ˊASC INTO TABLE WS
参考答案:A
参考解析:按年龄的降序排列,所以要用短语DE-SC,排序的字段有两种表示方式,分别是按列号和字段名排序,因为字段名是变量,故不能加引号。
30一间宿舍可住多个学生,则实体宿舍和学生之间的联系是( )。
A.一对一B.一对多C.多对一D.多对多
参考答案:B
参考解析:因为-间宿舍可以住多个学生即多个学生住在-个宿舍中,但-个学生只能住-问宿舍,所以实体宿舍和学生之间是-对多的关系。
31执行USEscIN0命令的结果是( )。
A.选择0号工作区打开sc表
B.选择空闲的最小号工作区打开sc表
C.选择第1号工作区打开sc表
D.显示出错信息
参考答案:B
参考解析:在多个工作区打开某个表时,可彻命令:USE<表名>IN<工作区号>,而最小的工作区号是1,如果指定为0,则选择编号最小的空闲工作区,所以USE sc IN0的结果是选择空闲的最小号工作区打开SC表。
32下列叙述中正确的是( )。
A.循环队列有队头和队尾两个指针,因此,循环队列是非线性结构
B.在循环队列中,只需要队头指针就能反映队列中元素的动态变化情况
C.在循环队列中,只需要队尾指针就能反映队列中元素的动态变化情况
D.循环队列中元素的个数是由队头指针和队尾指针共同决定
参考答案:D
参考解析:循环队列有队头和队尾两个指针,但是循环队列仍是线性结构的,所以A)错误;在循环队列中只需要队头指针与队尾两个指针来共同反映队列中元素的动态变化情况,所以B)与C)错误。
33为“运动员”表增加一个“得分”字段的正确的SQL命令是( )。
A.CHANGE TABLE运动员ADD得分I
B.ALTER DATA运动员ADD得分I
C.ALTER TABLE运动员ADD得分I
D.CHANGE TABLE运动员INSERT得分I
参考答案:C
参考解析:修改表结构可使用ALTERTABLE命令,为表增加字段的命令格式为:ALTER TABLE<表名>ADD[COLUMN]<字段类型>[<长度>[<小数位数>])][NULLINOTNULL][CHECK<逻辑表达式1>[ERROR<字符型文本提示信息>]][DEFAULT<默认值表达式>][ADD PRIMARY KEY<索引表达式2>TAG<索引名1>][ADD UNIQUE<索引表达式3>TAG<索引名2>]套用ALTER TABLE的命令格式,选项C)正确。
34在数据库设计中,将E-R图转换成关系数据模型的过程属于()。
A.需求分析阶段B.概念设计阶段C.逻辑设计阶段D.物理设计阶段
参考答案:C
参考解析:E-R图转换成关系模型数据则是把图形分析出来的联系反映到数据库中,即设计出表,所以属于逻辑设计阶段。
35如果有定义LOCAL data,data的初值是( )。
A.整数0B.不定值C.逻辑真D.逻辑假
参考答案:D
参考解析:声明局部变量的命令是:LOCAL<内存变量表>。该命令建立指定的局部内存变量,并为它们赋初值逻辑假.F.。
36在Visual FoxPro中,宏替换可以从变量中替换出( )。
A.字符串B.数值C.命令D.以上三种都可能
参考答案:D
参考解析:宏替换的功能是替换出字符变量的内容,即&的值是变量中的字符串。去掉了定界符之后,结果就可能有多种类型,可以是字符串、数值或命令。
37打开已经存在的表单文件的命令是( )。
A.MODIFY FORMB.EDITFORMC.OPEN FORMD.READ FORM
参考答案:A
参考解析:修改表单文件的命令格式是:MODIFYFORM<表单文件名>。
38查询客户名称中有“网络”二字的客户信息的正确SQL命令是( )。
A.SELECT*FROM客户FOR名称LIKE〝%网络%″
B.SELECT*FROM客户FOR名称=〝%网络%″
C.SELECT*FROM客户WHERE名称=〝%网络%″
D.SELECT*FROM客户WHERE名称LIKE〝%网络%″
参考答案:D
参考解析:LIKE为字符串匹配运算符,可与通配符“%”和“-”-起使用。“%”表示与任意多个字符匹配;“-”表示与任意-个字符匹配。查询客户名称中有“网络”二字的客户信息可用LIKE”%网络%”表示,正确的选项为D)。
39在表单中为表格控件指定数据源的属性是( )。
A.DataSourceB.DataFromC.RecordSourceD.RecordFrom
参考答案:C
参考解析:表格是-种容器对象,其外形与Browse窗口相似,-个表格由若干列对象(Column)组成,每个列对象包含-个标头对象(Header)和若干控件。这里,表格、列、标头和控件都有自己的属性、事件和方法。其中,RecordSource属性用于指明表格数据源,即C)选项正确。
40设有学生(学号,姓名,性别,出生日期)和选课(学号,课程号,成绩)两个关系,计算刘明同学选修的所有课程的平均成绩,正确的SQL语句是( )。
A.SELECT AVG(成绩)FROM选课WHERE姓名=〝刘明〞
B.SELECT AVG(成绩)FROM学生,选课WHERE姓名=〝刘明〞
C.SELECT AVG(成绩)FROM学生,选课WHERE学生.姓名=〝刘明〞
D.SELECT AVG(成绩)FROM学生,选课WHERE学生.学号=选课.学号AND姓名=〝刘明〞
参考答案:D
参考解析:SQL的核心是查询,它的基本形式由sE-LECT-FROM-WHERE查询块组成。其中SELECT说明要查询的字段,FROM说明要查询的字段来自哪个表或哪些表,可以对单个表或多个表进行查询,WHERE说明查询条件,即选择元组的条件。要计算刘明同学选修的所有课程的平均成绩,应设置where条件为WHERE学生.学号=选课.学号AND姓名=”刘明”,即D)选项正确。
二、基本操作题
41在考生文件夹下,完成如下操作:
(1)打开考生文件夹下的表单one,如下图所示,编写“显示”命令按钮的Click事件代码,使表单运行时单击该命令按钮则在Text1文本框中显示当前系统日期的年份(提示:通过设置文本框的Value属性实现,系统日期函数是date(),年份函数是year())。
(2)打开考生文件夹下的表单two,如下图所示,选择“表单”菜单中的“新建方法程序”命令,在“新建方法程序”对话框中,为该表单新建一个test方法,然后双击表单,选择该方法编写代码,该方法的功能是使“测试”按钮变为不可用,即将该按钮的Enabled属性设置为.F.。
(3)创建一个名为study_report的快速报表,报表包含表“课程表”中的所有字段。
(4)为“教师表”的“职工号”字段增加有效性规则:职工号左边3位字符是ll0,表达式为:LEFT(职工号,3)=“110”。
参考解析:
[操作步骤]
(1)利用“文件”菜单下的“打开”命令来打开考生文件夹下的表单one,或使用命令“MODIFY FORM one”打开表单one。双击“显示”命令按钮,在其Click事件中输入代码:ThisForm.Textl.Value=year(date())保存并运行修改后的表单,查看运行结果。
(2)单击工具栏中的“打开”按钮,打开考生文件夹下的表单two,在“表单”菜单中选择“新建方法程序”命令,新建-个名为test的方法,在属性窗口中双击此方法,在弹出的窗口中编写用户自定义过程代码:ThisForm.Commandl.Enabled=.f.在表单设计器环境下双击“测试”命令按钮,编写Click事件代码:ThisForm.Test保存并运行修改后的表单,查看运行结果。
(3)单击工具栏中的“新建”按钮,在“新建”对话框中选择“报表”,单击“新建文件”按钮;选择“报表”菜单下的“快速报表”命令,在“打开”对话框中选择考生文件夹下的“课程表”,在“快速报表”对话框中单击“确定”按钮;单击工具栏中的“保存”按钮,将快速报表名保存为study_report.
(4)在命令窗口输入命令:alter table教师表alter职工号set check LEFT(职工号,3)=〝110〞按下回车键运行命令。
[易错误区]在Visual FoxPro中,新建的-个方法必须通过相应的语句调用才能使用。在第(2)小题中,按照题目要求新建test方法后,还需要在命令按钮的Click事件中对该方法进行调用。
三、简单应用题
42在考生文件夹下完成如下简单应用:
(1)打开“课程管理”数据库,使用SQL语句建立一个视图salary,该视图包括系号和平均工资两个字段,
并且按平均工资降序排列。将该SQL语句存储在four.prg文件中。
(2)打开考生文件夹下的表单six,如下图所示,“登录”命令按钮的功能是:当用户输入用户名和口令以后,单击“登录’’按钮时,程序在自由表“用户表”中进行查找,若找不到相应的用户名,则提示“用户名错误”,若用户名输入正确,而口令输入错误,则提示“口令错误”。修改“登录”命令按钮Click事件中标有错误的语句,使其能够正确运行。注意:不得做其他修改。
参考解析:
(1)[操作步骤]
步骤l:单击工具栏中的“打开”按钮,打开考生文件夹下的数据库文件“课程管理”。
步骤2:单击工具栏中的“新建”按钮,新建-个程序,输入如下代码。
CREATE sql VIEWsalary AS SELECT教师表.系号,AV
(教师表.工资)As平均工资FROM教师表;
GROUP BY教师表.系号0RDER BY 2 DESC
步骤3:保存程序为four.prg,并运行该程序。
(2)[操作步骤]
步骤l:单击工具栏中的“打开”按钮,打开考生文件夹下的表单six.SCX,“登录”按钮中的代码如下。
**********“登录”按钮的Click事件代码**********
USE用户表
GOTOP
flag=0
&&下面语句有错误
WHILE.NOT.EOF()
IF Alhrim(用户名)==Alltrim(Thisform.Tma1.Value)
IF Alltrim(口令)==Alhrim(Thisfonn.Texl2.Value)
WAIT”欢迎使用”WINDOW TIMEOUT 2
ELSE
WAIT”口令错误”WINDOW TIMEOUT 2
ENDIF
nag=1
EXIT
ENDIF
&&下面语句有错误
NEXT
ENDDO
&&下面语句有错误
CASE FLAG=0
WAIT”用户名错误”WINDOW TIMEOUT 2
ENDIF
********************************
步骤2:修改程序中的错误如下。
错误1:将“WHILE”改为“DO WHIIE”。
错误2:将“NEXT”改为“SKIP”。
错误3:将“CASE”改为“IF”。
步骤3:保存并运行表单。
四、综合应用题
43利用菜单设计器建立一个菜单TJ_MENU3,要求如下:
(1)主菜单(条形菜单)的菜单项中有“统计”和“退出”两项。
(2)“统计”菜单下只有一个“平均”菜单项,该菜单项用来统计各门课程的平均成绩,统计结果包含“课程名,,和“平均成绩”两个字段,并将统计结果按课程名升序保存在表NEW TABLE32中。
(3)“退出”菜单项的功能是返回Visual FoxPro系统菜单(只能在命令框中填写相应命令)。菜单建立后。运行该菜单中的各个菜单项。
参考解析:
[操作步骤]
步骤1:通过菜单设计器新建-个菜单,输入菜单项“统计”和“退出”。
步骤2:为“统计”菜单项建立子菜单,并输入菜单项“平均”。
步骤3:在“平均”菜单的“结果”中选择“过程”,单击“编辑”按钮,在弹出的程序编辑窗口中输入下列代码。
******“平均”菜单项中的过程代码******
SETTALKOFF
OPEN DATABASESCORE_MANAGER
SELECT Course.课程名,AVG(Seorel.成绩)∞平均
成绩;
FROM cour8e,score1;
WHERE Course.课程号=Scowl.课程号;
GROUP BY Course.课程名;
ORDER BY Course.课程名;
INTO TABLE NEW_KBLE32
CLOSE ALL
SETTALKON
**************************
步骤4:在“退出”菜单的结果中选择。命令”,输入语句:
SET SYSMENU TODEFAULT。
步骤5:保存菜单为TJ_MENU3,生成莱单的可执行程序。
步骤6:运行菜单并执行菜单中的各菜单项。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。