江苏省高校计算机等级考试命题研究院 江苏省高校计算机等级考试辅导
2003年(春)江苏省等级考试上机试卷

2003年(春)江苏省等级考试上机试卷

二级 Visual FoxPro (VFP01) 

一、项目、数据库和表操作(12分)

打开软盘根目录下的项目文件TEST,在该项目中已有一数据库SJK。

1.按如下要求修改SJK中课程(KC)表的结构:

(1) 设置课时数(kss)字段的标题:课时数;

(2) 设置学分(xf)字段的有效性(验证)规则:大于等于1并且小于等于6;

(3) 设置必修课(bxk)字段的默认值:  .T. ;

(4) 增加一个备注型字段,字段名为bz;

(5(5) 创建一个普通索引ksskcdh,要求先按kss字段排序,kss相同的再按课程代号(Kcdh)字段排序。

2.为SJK中的ZY表添加编辑说明:专业代码表

3.项目TEST中存在自由表GZC,假定个人所得税的计算方法是:应发工资(yfgz)小于等于1000不交税;应发工资大于1000的部分,税率为10%。请按上述方法来修改GZC表中所有教授的个人所得税(grsds)字段的值。

4.3. 已知数字“0”的ASCII码为48,“9”的ASCII码为57,为XS表设置插入触发器:学号必须以数字开头,否则不允许插入。

4.4. SJK中表ZY已存在主索引zydh,索引表达式为zydh,XS表已存在普通索引zydh,索引表达式为zydh,以ZY表为主表,XS表为子表按zydh建立永久关系,并设置ZY表和XS表之间的参照完整性:更新级联。

 

二、设计查询(8分)

TEST项目中已存在查询chaxun,且在SJK中包含一个名为XSST的视图,该视图中包含学生的性别(xb),所在的系代号(xdh)、系名称(ximing),专业代号(zydh),另外在SJK的专业(ZY)表中含有专业名称(zymc)字段。按如下要求修改查询:

基于XSST视图和专业(ZY)表查询每个系各专业男、女生的人数。要求输出字段为:xdh、ximing,zydh,zymc,xb,学生人数,查询结果按xdh的升序排序,如果xdh相同,则按zydh的升序排序。

三、设计菜单(5分)

TEST项目中已存在菜单menu,其中已定义了“文件”菜单栏及其中的“恢复系统菜单”项。按如下要求设计菜单,完成后的运行效果如图所示。

 

1.创建“成绩管理”菜单栏,并设置热键“ALT+M”;

2 2. 在“成绩管理”菜单中创建子菜单“成绩输入”、“成绩统计”和“浏览成绩表”;

3. 3. 创建“成绩统计”菜单的子菜单,其中包含“按课程”和“按学生”菜单项;

4. 在“成绩统计”和“浏览成绩表”菜单项之间插入分组线;

5. 设置“浏览成绩表”菜单项的废止条件为:   .NOT.USED("CJ")。

 

四、设计表单(10分)

    TEST项目中已存在表单formL,用来浏览学生基本情况。表单中包含一个页框和一组记录导航命令按钮,页框中只有一个页面,其中文本框的数据源来自学生视图“xsview”,按如下要求修改表单,完成后运行表单的界面如左图所示,选择第二页时界面如右图所示。

    1. 设置表单的有关属性,使表单在运行时始终处于其它窗口之上;

    2. 设置命令按钮组cmgNav的边框样式为“无”;

    3. 在页框Pgf中增加一个页面Page2,设置Page2的标题为“记录列表”:

 4.在Page2中添加一个表格控件Gridl,设置Gridl的记录源类型为“别名”,记录源为“xsview”;


    5. 为了使第二页上显示的当前记录与第一页的学生信息相一致,编写Page2的Activate事件代码,实现如下功能:(1) 刷新本页面;(2) 使页面中的表格获得焦点。

 


五、程序改错(5分)

    下列程序的功能用于计算数列1/1!,l/2!,1/4!,1/4!,……,1/n!:之和(注:n!=1*2*3*4....*n),当某一数列项的值小于0.0l时停止计算。要求:

    ① 项目中有一个程序文件Pcode,将下列程序输入到其中并进行修改;

    ② 在修改程序时,不允许修改程序的总体框架和算法,不允许增加或减少语句数目。

SET DECI TO 2

n=l

nM=l

nSum=O

D0 WHILE .T.

nM = nM / n

IF  nM<0.01

                 LOOP

endif

nSum=nSum+ nM

nM= nM +1

ENDDO

WAIT WINDOWS ’该数列之和为’+STR(nSum102)