2002年(秋)Visual FoxPro二级考试上机试卷 (VFP06)
(本试卷上机考试时间为70分钟)
说明:1.考试语言环境为Visual FoxPro 5.0/6.0 2. 运行考试软盘A中的“上机考试”应用程序文件以输入考生的准考证号、姓名、试卷代号。 3. 启动VFP系统后,首先在命令窗口中执行命令: set default to A: 以设置默认的工作目录,然后再开始作题。 |
一、 项目、数据库和表操作(12分) 打开软盘根目录下的项目文件TEST,在该项目中已有一数据库SJK。 1. 按如下要求修改SJK中教师(JS)表的结构; (1) 设置工作日期(gzrq)字段的有效性(验证)规则:工作日期的年份必须小于或等于2001年; (2) 设置gzrq字段的有效性(验证)信息:输入的工作日期必须合理; (3) 将简历(jl)字段的字段名改为bz; (4) 为工号(gh)字段设置输入掩码和格式:接受5个字节的字符,且第一个字符必须为大写字母,后4个字符只接受数字字符; (5) 创建一个普通索引xdhzc,要求先按系代号(xdh)字段排序,系代号相同的再按职称代号(zcdh)字段排序。 2. 把软盘根目录中的表文件GZB.DBF添加为TEST项目中的自由表,并为其添加说明信息为“职工工资信息”。 3. 将GZB表中所有讲师的其它(qt)工资项增加50元。 4. 为JS设置删除触发器:仅允许删除1955年(含1955年)以前参加工作的教师记录。 5. SJK中JS表已存在主索引jsgh,索引表达式为gh,GZ表已存在普通索引gzgh,索引表达式为gh。以JS表为主表,GZ表为子表按gh建立永久关系,并设置JS表和GZ表之间的参照完整性:删除级联。
二、 设计查询(8分) 在TEST项目中已存在查询chaxun,按如下要求修改该查询: 基于学生(XS)表和成绩(CJ)表查询所有学生的选课门数、总成绩、平均成绩。要求输出字段为:xh、xm、xb、选课门数、总成绩、平均成绩,查询结果按xh升序排序。
三、 设计菜单(5分) TEST项目中已存在菜单menu,其中已定义了“文件”菜单栏及其中的“恢复系统菜单”项。按如下要求设计菜单,完成后的运行效果如图1所示。
1. 创建“数据处理”菜单栏; 2. 创建“数据处理”菜单中的菜单项:“查询”和“统计”; 3. 为“统计”菜单设置快捷键“CTRL+T”; 4. 创建“查询”菜单的子菜单,其中包含“学生成绩”、“课程成绩”和“教师工资”菜单项; 5. 在“课程成绩”和“教师工资”菜单项之间插入分组线。
四、 设计表单(10分) TEST项目中已存在表单formF,用来浏览学生信息,数据源是学生表(XS)。按如下要求修改表单,完成后的运行界面如图2所示。 1. 将表单数据环境中的xs表的主控索引设置为“xdh”; 2. 将表单的窗口类型(WindowType)设置为“模式”窗口,将表单数据的缓冲模式设置为“开放式”; 3. 在表单的空白处创建一个名为“LBLZP”标签控件,使其能根据内容长度自动调节尺寸,创建一个名为“OLBZP”的OLE绑定型控件,使其能显示学生表照片字段(xs.zp); 4. 编写表格控件的有关事件代码,要求:当光标在表格的行之间移动后,能使LBLZP标签能动态显示学生的姓名,刷新表单以使OLBZP控件能动态显示学生的照片。
五、 程序改错(5分) 下列程序的功能是计算分数数列2/1,3/2,5/3,……,m/n,m+n/m的前20项之和。要求:(1)项目中有一个程序文件Pcode,将下列程序输入到其中并进行修 (2)在修改程序时,不允许修改程序的总体框架和算法,不允许增加或减少语句数目。 nSum=0 m=2 &&数列中第一项的分子 n=1 &&数列中第一项的分母 FOR x=1 TO 20 nSum=nSum+m/x y=m m=m+n n=y ENDDO WAIT WINDOWS’前20项之和为’+STR(nSum,10,2) |