2001年(秋)江苏省等级考试上机试卷 二级 Visual FoxPro (VFP07)
(本试卷上机考试时间为70分钟)
说明:1.考试语言环境为Visual FoxPro 5.0/6.0 2.运行考试软盘A中的“上机考试”应用程序文件以输入考生的准考证号、姓名、试卷代号。 3.启动VFP系统后,首先在命令窗口中执行命令: set default to A: 以设置默认的工作目录,然后再开始作题。 |
一、项目、数据库和表操作
打开软盘根目录下的项目文件TEXTG,在该项目文件中已存在一个数据库SJK,根据下列要求在项目中完成有关数据库及表操作。 1. 设置SJK中KC表的字段属性及表属性,要求: (1)将kss字段的标题设置为"周课时数",默认值设置为4; (2)设置字段验证规则:学分(XF)大于或等于3的课程必须是必修课(BXK); (3)增加一个备注型字段KCBZ; (4)创建一个普通索引xfks,要求先学分(xf)降序排序,学分相同时再按课时数(kss)降序排序。 2. 把软盘根目录中的表文件KCB.DBF添加为TEXTG项目中的自由表。 3. 修改课程表的记录,要求在所有必修课(即bxk字段值为T)课程名的后面加"*"号。 4. KC表和RK 表已按gh建立永久关系,试按下列要求设置两个表之间的参照完整性: 如果在kc表中修改了kcdh字段的值,则rk表中的ckdh字段作相应的更改。
二、 设计查询 1. 在TEXTG项目中已存在查询chaxuna。已知xs表(学生)中xm字段(姓名)的第1个汉字为姓氏,按如下要求设计查询:
基于xs表统计各姓氏人数,要求输出字段为:姓氏,人数。查询结果只需人数最多的前10个姓氏,并按人数的降序排序,人数相同的姓氏则再按姓氏的拼音字母升序排序。
2. 在TEXTG项目中已存在查询chaxunb,按如下要求设计该查询:
基于xs表(学生)和cj 表(学生成绩)查询某专业某课程成绩各分数段(99~90,89~80,79~70,…,9~0)人数情况,99~90分数段用90表示,89~80分数段用80表示,依此类推(提示:某个成绩属于哪个分数段可用表达式int(cj/10)*10求得)。这里指定要查询的专业代号(zydh)为"110002",课程代号(kcdh)为"01"。要求输出字段为:分数段、人数。查询结果按分数段的降序排序。
三. 设计菜单 TESTG项目中已存在菜单MENUG,利用菜单设计器按如下要求修改菜单: 1. 在"文件"菜单栏下插入系统菜单栏"关闭"(创建子菜单); 2. 为"记录定位"菜单项创建下级子菜单,子菜单包含下列几项:
菜单名称 |
结果 |
热键 |
第一条 |
命令 |
T |
上一条 |
过程 |
P |
下一条 |
过程 |
N |
最后一条 |
命令 |
B |
3. 在A盘根目录下已经存在表文件XSB.DBF,并且可以通过"浏览"菜单项显示该表内容.为" 上一条"菜单项编制相应的过程,当执行该菜单时,屏幕上显示的XSB表的记录指针向上移动一条; 4. 如果记录指针已经到尾部,则"下一条"菜单项不可用。
四. 设计表单 根据下列要修改项目文件中的表单文件formg,该表单用来查看每个专业的学生成绩。 1. 根据已经设置好的组和框的RowSource属性来设置组合框的RowSourceType属性: 2. 将表格中姓名这一列的ControlSource属性值设置为XM 3. 去掉水平滚动条: 4. 完善表格的Init事件代码,使得成绩这一列的值如果小于60 分,则前景色为红色,否则为黑色; 5. 在表单中相应分数段的标签下面,添加三个文本框,并为"计算"按钮编写相应的事件代码,使得当单击"计算"按钮时,文本框中显示相应分数段的人数。 进行上述修改以后运行表单,然后点击"计算"按钮,此时屏幕显示:
|