华北科技学院2010/2011学年第2学期期末考试试卷考试科目:程序设计语言(VF)选用试卷B适用专业非计算机本科题目一二三四五六总分得分一、选择题(每题2分,共25题,总计50分)1.VisualFoxPro的报表文件.FRX中的保存的是A)打印报表的预览格式B)打印报表本身C)报表的格式和数据D)报表设计格式的定义2.连编后可以脱离开VisualFoxPro独立运行的程序是A)PRG程序B)EXE程序C)FXP程序D)APP程序3.在创建快速报表时,基本带区包括A)页标头、页注脚和细节B)组标头、组注脚和细节C)报表标题、细节和组注脚D)标题、细节和总结4.在下面列出的数据模型中,哪一个是概念数据模型A)关系模型B)层次模型C)网状模型D)实体—联系模型5.如果一个公司只能有一个总经理,而且一个总经理不能同时担任其他公司的总经理,则公司和总经理两实体间的联系是A)多对多联系B)一对多联系C)多对一联系D)一对一联系6.如果对一个关系实施了一种关系运算后得到了一个新的关系,而且新关系中的属性个数少于原来关系中的属性个数,这说明所实施的关系运算是A)选择B)投影C)连接D)并7.项目管理器的“数据”选项卡用于显示和管理A)数据库、自由表、查询和视图B)数据库、视图和查询C)数据库、自由表和查询D)数据库、表单和查询8.表文件已经打开,当前记录中姓名字段的值是“王小平”。执行以下命令序列姓名=李敏姓名屏幕显示的结果是A)王小平B)李敏C)王小平李敏D)李敏王小平9.下列逻辑表达式中,结果为.F.的值是A)MOD(20,4)=MOD(20,5)B)张$张三C)张三$张D){^2003.01.01}{^2003.01.02}10.下列表达式中,结果一定为.T.的是A)[男]$性别B)CTOD([03/21/03])CTOD([03/12/03])系(部)专业、班级姓名学号密封装订线C)[2000][3]D).NOT..T.11.顺序执行以下命令之后,最后一条命令的输出结果是X=[A]Y=XA=[长江黄河]X+&X–Y-&YA)长江黄河B)A长江黄河A长江黄河C)A长江黄河XAD)A长江黄河长江黄河12.顺序执行以下命令之后,最后一条命令的输出结果是SETEXACTOFFX=[A]IIF([A]=X,X–[BCD],X+[BCD])A)AB)BCDC)ABCDD)ABCD13.下列命令用于显示1965年及其以前出生的职工记录,其中错误的是A)LISTFORYEAR(出生日期)=1965B)LISTFORSUBSTR(DTOC(出生日期),7,2)=[65]C)LISTFORLEFT(DTOC(出生日期),7,2)=[65]D)LISTFORRIGHT(DTOC(出生日期),2)=[65]14.VisualFoxPro数据库文件是A)存放用户数据的文件B)管理数据库对象的系统文件C)存放用户数据和系统数据的文件D)其他三种说法都对15.如果一个字段的宽度为8,则此字段的类型不可能是A)字符型B)数值型C)日期型D)备注型16.某数据库表有字符型、数值型和逻辑型3个字段:字符型字段宽度为8,数值型字段宽度为6,小数位为2。若数据库表中共有100条记录,则全部记录需要占据的存储字节数目是A)1400B)1500C)1600D)170017.学生.DBF有学号(C,6),姓名(C,8),性别(C,2),生日(D)四个字段,当前记录值是:“020101”,“张三”,“男”,02/10/84。执行下列命令:SCATTERTOXSLEN(XS(2))结果是A)张三B)男C)4D)818.在没有设置任何筛选条件的情况下,要显示当前表中职称是工程师的所有记录,应该使用命令A)list职称=[工程师]B)listfor职称=[工程师]C)listwhile职称=[工程师]D)listrest职称=[工程师]19.假定表文件ABC.DBF前6条记录均为男生记录,执行以下命令后,记录指针定位在USEABCGO3LOCATENEXT3FOR性别=男A)第3号记录上B)第4号记录上C)第5号记录上D)第6号记录上20.设表文件“学生.DBF”中有10条记录,执行如下两条命令:USE学生INSERTBLANK其结果是在学生表文件的A)第1条记录的位置插入了1个空白记录B)第2条记录的位置插入了1个空白记录C)文件尾插入了1个空白记录D)不确定位置插入了1个空白记录21.要为当前表所有职工增加100元工资,应该使用命令A)CHANGE工资WITH工资+100B)REPLACE工资WITH工资+100C)CHANGEALL工资WITH工资+100D)REPLACEALL工资WITH工资+10022.当前表有一个类型为C的字段SNA,现在要将内存变量MM的字符串的内容赋给当前记录的SNA字段,应该使用命令A)SNA=MMB)REPLACESNAWITHMMC)STORE&MMTOSNAD)REPLACESNAWITH&MM23.在以下各种说法中,正确的是A)DELETE、ZAP和PACK的功能各不相同B)ZAP和PACK的功能相同C)DELETEALL和ZAP的功能相同D)DELETEALL和PACK的功能相同24.在当前工作区已打开学生表,要求按男生在前,女生在后,同一性别的按年龄从小到大排序,生成新表SS.DBF,应使用命令A)SORTTOSSON性别,出生日期/DB)INDEXTOSSON性别,出生日期C)SORTTOSSON性别,出生日期D)COPYTOSSON性别,出生日期/D25.只清空当前表HGZ.DBF中奖金字段的全部值,应当使用命令A)MODIFYSTRUCTUREB)DELETEC)REPLACED)ZAP二、填空题(每空2分,共10题,总计20分)1.用二维表表示的实体及实体之间联系的数据模型的为。2.在连接运算中,连接是指去掉重复属性的等值连接。3.字段变量可以与内存变量同名,若没有指明是哪种形式的变量,系统默认为是。4.执行SETEXACTOFF命令后,命令数据库=[数据]的执行结果是。5.命令LEFT(123456789,LEN(计算机))的结果是。6.设D=1516,命令VARTYPE(D)的执行结果是。7.打开数据库设计器的命令是DATABASE。8.在VisualFoxPro中,设有人事档案表RS.DBF,其中简历为备注型字段,则该字段的数据存放在文件中。9.与命令display的执行结果完全相同的另一个list命令应该是。10.使记录指针相对于当前记录向上移动5个记录,应该使用命令。三、判断题(正确打√,错误打×,每题1分,共10题,总计10分)1.索引查询命令seek只能使记录指针指向表中满足条件的第一个记录。2.在建立参照完整性之前,必须首先清理数据库,即物理删除各数据库表中带有删除标记的记录。3.执行Total命令将生成一个新表,该表的记录个数总量小于当前表的记录个数。4.永久联系在数据库设计器中显示为表索引间的连接线。5.Update语句是SQL语言最重要的,也是使用最频繁的语句。6.VisualFoxPro的SQLselect语句的联接格式可以实现多个表的联接。7.菜单设计器的主要功能有两个:一是为顶层表单设计下拉菜单,二是通过定制VisualFoxPro系统菜单建立应用程序的下拉式菜单。8.可以从本地表和存储在服务器上的表或远程数据源中创建视图,但不能从其它视图中创建视图。9.定义一个自定义函数必须建立一个独立的文件。10.用户从基类创建的子类属于用户定义类。用户定义类只能是子类,而不能是父类。四、编程题(1,2题每题6分,第3题8分,总计20分)1、通过输入学生的学号(字符型)查找学生,若找到该学生,先输出学号与姓名,然后输出“英语”和“计算机实用技术”成绩。若找不到该学生输出“查无该生”。(设表文件“学生信息”满足题目需要)2、输入学生成绩,并要求:成绩小于60分时,输出“不及格”;成绩在60~69分之间时,输出“及格”;成绩在70~79之间时,输出“中”;当成绩在80~89之间时,输出“良”;当成绩在90~100之间时,输出“优”。3、编制一个显示当前时间的时钟显示界面,要求每秒动态跳动一次,并将表单的背景设置蓝,绿两色自动变换(与时间同步切换),Timer1的Interval属性已在属性窗口中设置完成。表单设计界面表单运行界面2010/2011学年第2学期《程序设计语言VF》B卷答案及评分标准一、单项选择题,每题2分,错选、漏选不得分1.D2.B3.A4.D5.D6.B7.C8.A9.C10.B11.B12.D13.C14.B15.D16.C17.D18.B19.A20.B21.D22.B23.A24.A25.C二、填空题,每空2分,错填、漏填不得分1.关系模型2.自然3.字段变量4..T.5.1234566.L7.MODIFY8.RS.FPT9.LISTNEXT1或LISTRECORDRECNO()10.SKIP–5三、判断题,每题1分,错答、漏答不得分1.对2.对3.错4.对5.错6.对7.错8.错9.错10.错四、编程题,1,2题每题6分,第3题8分,写出主要语句即给分。1、clearuse学生信息accept请输入学生学号:toxhlocatefor学号==xhif!eof()?学号,姓名listfiel英语,计算机实用技术for学号=xhelse?查无该生endifuse2、clearinput请输入成绩:tocjdocasecasecj=90?优秀casecj=80?良好casecj=70?中casecj=60?及格casecj60?不及格otherwise?数据有误endcasesettalkon3、编写计时器(Timer1)的Timer事件代码:thisform.text1.value=time()&&使文本框显示系统时间ifval(right(time(),2))%2=0&&如果秒值是2秒的整数倍。thisform.backcolor=rgb(0,255,0)&&表单背景为绿色elsethisform.backcolor=rgb(0,0,255)&&表单背景为篮色endif