江苏vfp二级考试上机2004au
更新时间:2023-05-24 07:35:01 阅读量: 实用文档 文档下载
江苏vfp二级考试上机
江苏省高等学校非计算机专业学生
2004 年(秋)计算机基础知识和应用能力等级考试上机试卷
二级Visual FoxPro (试卷代号VFP01)
(本试卷完成时间 70分钟)
一、 一、 项目、数据库和表操作(12分)
打开软盘根目录下的项目文件TEST,在该项目中已有一数据库SJK。
1. 1. 按如下要求修改SJK中课程(KC)表的结构;
(1) (1) 将学分(xf)字段的默认值设置为3;
(2) (2) 为kcdh字段设置输入掩码:接受4个数字字符;
(3) (3) 设置课时数(kss)字段的有效性(验证)规则:大于等于2
并且小于等于6;
(4) (4) 为表增加一个备注字段kcsm,并将其标题设置为:课程说明;
(5) (5) 创建普通索引xfdh,要求先按xf字段排序,xf相同时再按课
程代号(kcdh)字段排序。
2. 2. 为KC标添加编辑说明:课程表。
3. 设置SJK中zy表的包含状态为:包含。
3. 4. 为学生表(XS)添加一个年龄字段,字段名为age、类型为数值型、宽度为2,然
后计算表中所有籍贯(jg)为“江苏南京”的学生年龄,计算结果存储在age字段中。(注:计算方法为当前日期的年份减去学生出生日期(csrq)的年份。
4. 5. JS表中已存在主索引jsgh,索引表达式为gh; GZ表已存在普通索引gzgh,索引
表达式为gh。以JS表为主表、GZ表为子表,按gh 建立永久关系,并设置JS表和GZ表之间的参照完整性:删除限制。
二、 二、 设计查询(8分)
TEST项目中已经存在查询chaxun,在SJK的学生(XS)表中含有班级编号(bjbh)、系代号(xdh)以及性别(xb)等字段,系名(XIM)表中含有系代号(xdh)和系名称(ximing)字段。按如下要求修改查询:
基于XIM表和XS表查询每个系个班级的人数以及女生所占比例,要求输出字段包括:xdh、ximing、bjbh、总人数、 女生人数和女生所占比例,查询结果按系代号升序排列,系代号相同是按班级编号升序排列。
三、 三、 设计菜单(5分)
项目TEST中已存在菜单MenuH,利用菜单设计器按如下要求修改菜单:
1. 1. 按图1所示,在“系统设置”菜单栏后面增加“教师档案管理”菜单栏,并
为它设置子菜单;
2.
3.
4. 2. 为“教师工资管理”菜单栏下的“工资调整”菜单项编写命令:当代码执行
该菜单时,工资(GZ)表中所有教师的岗位津贴(gwjt)统一增加200元;
5. Update gz set gwjt=gwjt+200
6. 3. 将下列代码加到菜单的适当位置,使菜单运行时首先执行它。
CLEAR
CLOSE TABLES ALL
显示—常规选项—设置(选钩)—输入命令(在打开该表的前提下)
四、 四、 设计菜单(10分)
项目TEST中已经存在表单FormH。按下列要求修改该表单,修改完成后运行表单,其效果如图2所示。
江苏vfp二级考试上机
1. 1. 修改表单的有关属性,使之外观如Windows对话框(无最大/最小化按钮、
不可调整大小、自动居中);
2. 2. 修改表格第5列的列表头的有关属性,将显示的“zcdh”修改为“职称代号”;
3. 3. 修改列表框控件的有关属性,要求显示两列数据(ZC表中的两个字段), 且
通过对数据环境的设置使数据按职称代号排序;
4. 4. 完善下拉组合框的InterActiveChange事件代码,要求在源代码的基础上,
在合适的位置增加2条语句已完成如下功能:让标签控件Label2运行时可见,且用之显示系名;
5. 5. 完善“确定”命令按钮的Click事件代码,要求在源代码的基础上,在合适
的位置增加1条语句以完善功能:用列表框中选择的职称代号更新表格中当前记录的职称代号(zcdh)。
五、 五、 程序改错(5分)
下列程序的功能是:将十进制数字字符串转换为二进制数字字符串,其基本算法是“除2取余法”。要求:
① ① 项目中有一个程序文件Pcode,将下列程序输入到其中并进行修改(注:
注释部分不输入);
② ② 在修改程序时,不允许修改程序的总体框架和算法,不允许增加或减少语
句数目。
LOCAL cDec, cBin, nDec,n
cDec=”67” && 十进制字符串
cBin=SPACE(0) &&二进制字符串
nDec=VAL(cDec)
IF cDec =”0”
cBin=”0”
ELSE
DO WHILE nDec>0
n= MOD(nDec,10)――2
nDec=INT(nDec/2)
cBin=STR(n,1)+cBin
ENDW――enddo
ENDIF
cMsg=”十进制数”+cDec+”的二进制表示为:”cBin=MESSAGEBOX(cMsg)
江苏vfp二级考试上机
江苏省高等学校非计算机专业学生
2004 年(秋)计算机基础知识和应用能力等级考试上机试卷
二级Visual FoxPro (试卷代号VFP02)
(本试卷完成时间 70分钟)
一、项目、数据库和表操作(12分)
打开软盘根目录下的项目文件TEST,在该项目中已有一数据库SJK。根据下列要求完成项目、数据库及表的操作。
1. 1. 修改数据库中图书(TS)表的结构,要求:
(1) (1) 修改jg字段的宽度,使之能容纳4位整数和2 位小数;
(2) (2) 将cs字段的标题设置为“库存数”,默认值设置为10;
(3) (3) 设置cs字段的有效性(验证)规则和有效性(验证)信息;
库存数必须大于0;
(4) (4) 创建普通索引smrq ,要求先按书名(sm)排序,书名相同时
再按入库日期(rkrq)排序。
2. 2. 将自由表JSB添加到SJK中,并在项目中为该表添加编辑说明:“教师表”。
3. 3. 先修改软盘上TS1表的结构,添加一个类型、 宽度和小数位均与jg字段相
同的newjg字段,然后计算所有记录的该字段的值:jg值的基础上增加15%。
4. 4. 以KC表为主表、PK表中存在匹配的关键字值,则禁止在KC表中删除记录。
二、设计查询(8分)
在TEST项目中已经存在查询chaxun,且在SJK中包含一个名为XSCJST的视图,该视图记录了每一个学生的选课情况及选修课的性质,具体字段包括:学号(xh)、姓名(xm)、 课程代号(hcdh)、成绩(cj)、 是否必修(bxk)、学分(xf);在SJK的学生(XS)表中含有学生的学号(xh)和性别(xb)。按如下要求修改查询:
根据XS表和XSCJST视图查询每个学生的选课门数。要求输出字段包括:xh 、xm、 xb、必修课门数和选修课门数,查询结果按必修课门数从小到大排序。
三、设计菜单(10)分
项目TEST中已存在菜单MenuC,利用菜单设计器按如下要求修改该菜单:
1. 1. 按图1所示为“统计分析”菜单项创建子菜单;
2.
3. 2. 为“不及格统计”菜单项设置SQl命令:基于成绩表(CJ.DBF)统计各门课程
代号(kcdh)、不及格人次(注:成绩(cj)小于60分为不及格);
4. Select (iif(cj<60,1,0)) as 不及格人数 from cj group by kcdh
江苏vfp二级考试上机
5. 3. 将“学生档案管理”菜单项废止。跳过.t.
四、设计表单(10分)
项目TEST中已经存在表单FormC,该表单的功能是:利用JS表中的教师工号数据进行“摇号”,单击“开始”按钮,则文本框中随机的显示教师工号,按回车键停止。按下列要求修改表单,修改完成后运行表单,其效果如图2所示。
1. 1. 将表单的标题改为“摇号”;
2. 2. 将文本框改为数据只读;
3. 3. 修改形状控件Shap1的有关属性,使形状控件为三维效果;
4. 4. 删除表单上的编辑框控件,然后在标签控件Lable2的下方添加一个列表框控
件(List1),并将其大小设置为与形状控件Shap1相同(如图2所示);
5. 5. 修改“开始”命令按钮的Click事件代码:要求在源代码之后添加两条命令,
使得每次摇出的教师信息(由字符形变量cStr给定)添加到列表框中,且“开始”按钮可再次使用。
五、 程序改错(5分)
下列程序的功能是将一个英文词组中的每个单词的首字母改为大写(单词之间以空格分隔);例如“Microsoft visual foxpro” 经程序转换后为“Microsoft Visual Foxpro”。 其基本算法是:首先在字符串中查找到第一个空格,把空格左边的部分看作为一个单词,从字符串中截取左边的单词,并将首字母改为大写。剩余的部分用同样的方法进行处理,直到剩余的部分没有字符为止。要求:
① ① 项目中有一个程序文件Pcode,将下列程序输入到其中并进行修改;
② ② 在修改程序时,不允许修改程序的总体框架和算法,不允许增加或
减少语句数目。
cText=”Microsoft visual foxpro”
cResult=SPACE(0)
doWHILE NOT EMPTY(cText)
nSpacePos=AT(SPACE(1),cText)
IF nSpacePos>0
cWord=LEFT(cText,nSpacePos)
ElSE
cWord=cText
ENDIF
cWord=UPPER(LEFT(cWord,1))+SUBSTR(cWord,2)
cResult=cWord+cResult—cresult+cword
cText=LTRIM(SUBSTR(cText,nSpacePos))
江苏vfp二级考试上机
ENDDO
WAIT WINDOW cResult
江苏省高等学校非计算机专业学生
2004 年(秋)计算机基础知识和应用能力等级考试上机试卷
二级Visual FoxPro (试卷代号VFP03)
(本试卷完成时间 70分钟)
一、项目、数据库和表操作(12分)
打开软盘根目录下的项目文件TEST,在该项目中已有一数据库SJK。
1.按如下要求修改SJK中图书(TS)表的结构:
(1) (1) 将分类号(flh)字段的标题设置为“分
类号”;
(2) (2) 设置rkrq字段的有效性(验证)规则:
必须是在当前日期(包括当前日期)之前;
(3) (3) 设置rkrq字段的有效性(验证)信息:
入库日期无效;
(4) (4) 为分类号(flh)字段设置输入格式:删
除输入字段前导空格;
(5) (5) 创建一个普通索引zj,要求先按作者(zz)
字段排序,作者相同的再按价格(jg)字段从小到大排序。Zz+str(jg)
2.把TEST项目中的自由表GZC移出项目。
3.把软盘中的表文件TS1.DBF添加为TEST项目中的自由表,并为TS1表添加一条记录,记录内容如下表所示:
xdh,
索引表达式为xdh。以XIM表为主表,按xdh建立永久关系,并设置XIM表和JS表之间的参照完整性:更新级联;
二、设计查询(8分)
TEST项目中已经存在查询chaxun,且在SJK中包含了一个名为XSCJST 的视图,该视图记录了每一个学生的选修课情况以及选修课程学分值,具体数字段包括:学号(xh)、姓名(xm)、课程代号(kcdh)、成绩(cj)、和学分(xf);在SJK的学生(XS)表中含有学生的学号(xh)和性别(xb)。按如下要求修改查询:
基于XS表和XSCJST视图查询每个学生的选课门数、总学分、输出字段包括xh、xm、xb、选课门数和总学分,查询结果按总学分从高到低排列。
注:如果该学生的成绩(cj)字段的值小于60分。则该课的学分为0。
三、设计菜单(5分)
项目TEST中已经存在菜单MenuB,利用菜单设计器按如下要求修改该菜单:
1. 1. 按图1所示,为“学生成绩管理”菜单项创建子菜单;
江苏vfp二级考试上机
2.
3. 2. 为“成绩查询”菜单项编制SQL命令:基于成绩表(Cj.DBF)查询总成绩大于
300分的学生清单,要求当执行该菜单时在浏览窗口显示学号(xh)和总成绩;
4. Select sum(cj) as 总成绩.xh from cj where sum(cj)>300 group by xh
5. 3. 在“文件”菜单栏下插入系统菜单项“打开”。
文件—子菜单—编辑—插入栏—打开—
四、 设计表单(10分)
项目TEST中已经存在表单FormB,该表单的功能是根据输入的学号查询、显示相应学生的成绩。按下列要求修改该表单,修改完后运行表单,其效果如图2所示。
1. 1. 将表单左上角的控制图标改为软盘中NET.ICO文件所示图标;
2. 2. 修改表格控件的有关属性,使表格中的数据只读期可获得焦点;
3. 3. 修改表格控件的Init事件代码,使得表格中显示的学生成绩:如果成绩不及格(小
于60分),则该行以红色显示,否则以黑色显示;
4. 4. 向表单上添加一个“退出”命令按钮(如图2所示),并设置其有关属性、编写Click
事件代码,要求:对象名为cmdExit,单击该命令按钮时关闭所有打开的表和临时表,并关闭表单。
五、 程序改错(5分)
VFP中LEFT(cExp,n)函数的功能是从字符串表达式cExp的值中取出左边n个字节长度的字符子串。如果表达式cExp的值是中英文混合的字符串,因一个汉字占两个字节(设这里讨论的汉字均为GB2312-80中的汉字),则LEFT函数很容易把一个汉字取“破”,从而出现“乱码”。
下列自定义函数CLEFT(cExp,n)的功能是:取字符串cExp左边n 个字符。如果cExp字符串中包含汉字,则将每个汉字与英文字符同等看作长度为1。例如CLEFT(“VFP上机考试”,5)的返回值是“VFP上机”,而不是“VFP上”。要求:
① ① 项目中有一个程序文件Pcode,将下列程序输入到其中并进行修改
(注:注释部分不输入);
② ② 在修改程序时,不允许修改程序的总体框架和算法,不允许增加或
减少语句数目。
江苏vfp二级考试上机
WAIT WINDOW CLEFT(“VFP上机考试”,5)
FUNCTION CLEFT
PARA cExp,n
LOCAL ch,nCh,cResult
cResult=SPACE(0)
nPos=1
FOR i=1 TO n
Ch=SUBTR(cExp,nPos,1)
***一个汉字有两个字节,汉字每个字节的ASCII码值大于127
IF ASC(ch)>127
cResult=cResult + SUBSTR(cExp,nPos,2)
nPos=nPos+2
ELSEIF--else
cResult=cResult + SUBSTR(cExp,nPos,1)
nPos=nPos+1
ENDIF
ENDFOR
RETURN n--cresult
ENDFUNC
江苏省高等学校非计算机专业学生
2004 年(秋)计算机基础知识和应用能力等级考试上机试卷
二级Visual FoxPro (试卷代号VFP04)
(本试卷完成时间 70分钟)
一、项目、数据库和表操作(12分)
打开软盘根目录下的项目文件TEST,在该项目中已有一数据库SJK。
1. 1. 按如下要求修改SJK中的教师(JS)表结构:
(1) (1) 为工作日期(gzrq)字段设置标题:工作日期;
(2) (2) JS表中含有日期(csrq),设置JS的纪录有效性(验证)规则:
18岁以后(18岁)才能参加工作;
(3) (3) 为职称代号(zcdh)字段设置输入掩码:接受2个字符,且只
接受数字字符;
(4) (4) 增加一个备注字段,字段名为zwjs;
(5) (5) 创建一个普通索引xdhcsrq,要求先按xdh字段排序,相同时
再按csrq字段排序。
2. 2. 为JS表添加编辑说明:教师基本信息表。
3. 3. 把软盘中的表文件GZB.DBF添加到SJK库中。
4. 4. 假定增加教师的基本工资(jbgz)的具体方法是:教授加500元,副教授加300
元,讲师和助教加200元。请按上述方法来修改GZC表中所有纪录得基本工资(jbgz)字段的值。
5. Replace jbgz with jbgz+500 for zc=””教授
6. Replace jbgz with jbgz+200 for zc=”讲师”or zc=“讲师” or zc=”助教”
7. 5. KC表中已存在主索引kcdh,索引表达式为kcdh; RK表已存在普通索引kcdh,索
引表达式为kcdh。以KC表为主表、RK表为子表,按kcdh建立永久关系,并设置KC表和RK表之间的参照完整性:更新级联。
8. 筛选 kcdh 分组依据 bjbh
二、 设计查询(8分)
江苏vfp二级考试上机
TEST项目中已经存在查询chaxun,且在SJK中包含一个名为BJCJST的视图,该视图记录了各个班级的学生考试成绩表,具体字段包括班级编号(bjbh)、学号(xh)、课程代号(kcdh)、成绩(cj);
在SJK的课程(KC)表中含有课程代号(kcdh)和课程名称(kcm)字段。按如下要求修改查询:
基于视图BJCJST和KC表查询各班学生参加课程号“03”的课程的考试情况,输出字段包括:bjbh、kcm、总人数、优秀率、不及格率,查询结果按班级编号升序排序。 (注:优秀率=成绩90分以上(包括90分)的人数/总人数,
不及格率=不及格(成绩小于60分)人数/总人数)
三、 设计菜单(5分)
项目TEST中已存在菜单MenuI,利用菜单设计器,按如下要求修改该菜单。
1. 1. 按图1所示,为“人事管理”菜单栏编制子菜单;
2.
3. 2. 为“薪资管理”菜单栏下的“工资调整”菜单项编写命令,当执行该菜单项时,
将工资(GZ)表中所有基本工资(jbgz)低于800元的纪录都调整到800元;
4. Update gz set jbgz=800 where jbgz<800
5. 3. 在“系统设置”菜单栏下插入系统菜单栏“打印”。
四、设计表单(10分)
项目TEST中已经存在表单FormI,该表单的功能是打印某学生或某课程的成绩。按下列要求修改表单,修改文成后运行表单,其效果如图2所示。
1. 1. 将表单左上角的控制图标改为软盘中NET.ICO文件所示图标;
2. 2. 向表单上添加一个下拉列表框控件Combo1,要求与选项按钮组左对齐、能显示
2列数据,其数据源(RowSource属性)为查询语句:
SELECT xh,xm FROM xs ORDER BY 1 INTO CURSOR temp1
并且据此设置Combo 1控件的RowSourceType 属性;
3. 3. 修改选项按钮组控件,使之无边框(如图2所示),并为该控件的
InterActiveChange事件代码增加两条语句,用于清除下拉列表框的值,并使下拉列表框获得焦点;
4. 4. 完善“打印”命令按钮的Click事件代码,要求在源代码之后增加一条语句,
用于预览报表文件BB;
5. 5. 为“取消”命令按钮设置Click事件代码,其功能是:关闭表单。
江苏vfp二级考试上机
五、程序修改(5分)
下列程序的功能是:根据指定日期显示中文的日期与星期表示形式。例如,对于日期“2001/10/16”,显示的结果是“2004年10月16日 星期六”。要求:
① ① 项目中有一个程序文件Pcode,将下列程序输入到其中并进行修改(注:
注释部分不输入);
② ② 在修改程序时,不允许修改程序的总体框架和算法,不允许增加或减少语
句数目。
LOCAL dDate,cWeekStr,nWeek,cMsg
SET DATE TO LONG
SET FDOW TO 1
dDate =CTOD(“2004/10/16”)
IF TYPE(dDate)=”D”---dcurrentdate
nWeek=DOW(dDate)
cWeekStr=”日一二三四五六”
eWeek=[星期]+SUBSTR(cWeekStr,2*cWeek-1,2)
cMsg=DTOC(dDate)+SPACE(2)+c(n)Week
ELSE
cMsg=”无效的日期!”
ENDIF
=MESSAGEBOX(cMsg)
江苏省高等学校非计算机专业学生
2004 年(秋)计算机基础知识和应用能力等级考试上机试卷
二级Visual FoxPro (试卷代号VFP05)
(本试卷完成时间 70分钟)
一、项目、数据库和表操作(12分)
打开软盘根目录下的项目文件TEST,在该项目中已有一数据库SJK。
1.按如下要求修改SJK中的教师(JS)表结构:
(1) (1) 将简历(jl)字段标题设置为:简历;
(2) (2) 为工号(gh)字段设置输入掩码:接受5个字节的字符,且
第1个字符必须为大写字母,后4个字符只接受数字;!9999
(3) (3) 设置工作日期(gzrq)字段的有效性(验证)规则:工作日
期的年份必须小于等于2004年且大于等于1960年;
(4) (4) 设置gzrq字段的有效性(验证)信息:必须在1960-2004年
之间;
(5) (5) 创建一个普通索引xdhzc,要求先按系代号(xdh)字段排序,
系代号相同时再按职称代号(zcdh)字段排序;
2.将软盘目录中的表文件GZB.DBF添加为TEST项目中的自由表,并为其添加说明信息:工资信息表。--编辑说明
3.将GZB表中所有讲师的其他(qt)工资项设置为150元。
4.为JS表设置更新触发器:仅允许更新1960年(含1960年)以前参加工作的教师纪录。 Year(??)<= 1960.
5.SJK中JS表已存在主索引jsgh,索引表达式为gh;GZ表已存在普通索引gzgh,索引表达式为gh。以JS 表为主表、GZ表为子表,按gh 建立永久关系,并设者JS表和GZ表之间的参照完整性:删除级联。
二、设计查询(8分)
在成绩(CJ)表中输入成绩时,如果输入了课程(KC)表中没有的课程代号(kcdh),那
江苏vfp二级考试上机
么该学生的该成绩应视为无效,CJ表中这样的纪录称为“孤立纪录”,利用查询可以找出这些孤立纪录。在TEST项目中已存在查询CHAXUN,按如下要求修改该查询:
基于KC表和Cj表查询成绩表中的“孤立纪录”,要求输出两个表的所有字段,相同的行在查询结果中之出现一次,且按学号(xh)升序排序。
(提示:使用“右联接”联接KC和CJ表,然后在结果中选出来源于KC标的kcdh字段值为Null值的纪录。)
三、设计菜单(5分)
项目TEST中已存在菜单MenuE,按如下要求修改该菜单,完成后运行效果如图1所示。
(1) (1) 为“文件”菜单栏创建子菜单,并在子菜单中插入菜单项“导
出”;
(2)
(3) (2) 为“成绩管理”菜单栏创建子菜单,该子菜单包括二个菜单
项“学生成绩录入”、“学生成绩查询”,并用分割线隔开;
(4) (3) 为“课程管理”菜单栏下的菜单项“课程代码录入”设置快
捷键“CTRL+L”
(5) (4) 为“课程管理”菜单栏下的“课程代码查询”菜单项设置SQL
命令,要求:当执行该菜单项时,在浏览窗口中显示课程(KC)表中所有
纪录的所有字段;browse all
(6) (5) 废止“教师任课管理”菜单栏。
四、设计表单(10分)
项目TEST中已经存在表单FormE,该表单的功能是:更改用户的密码(用户、及相关信息存储在表user中)。按下列要求修改该表单,修改完成后运行表单,其效果如图2所示。
1. 1. 将表单的标题改为“更改密码”;
2. 2. 将Combo1控件设置为下拉列表框,且修改该控件的有关属性,使得该控件
在表单运行时,下拉后显示两列数据;USER表中的编号(no)和用户名(name)字段;
3. 3. 修改Text1 文本框控件的有关属性,使得表单运行时,该文本框中输入的字
符均为字符“*”显示;
4. 4. 完善“确定”命令按钮的Click事件代码,其功能为:如输入的原密码正确
江苏vfp二级考试上机
且两次输入的新密码相同,则更改user表中的相应密码(password字段)、关闭表单,否则利用MESSAGEBOX函数显示信息提示框(提示信息为“原密码不对”或“两次输入的新密码不一致”);
5. 5. 为“取消”命令按钮编写Click事件代码,其功能为关闭表单。
五、程序改错(5分)
下列程序的功能是:找出所有满足如下条件的三位十六进制数xyz,其个位数字x 、y、 z成等差递增(如123,135, 9AB, DEF),程序运行后显示如图3所示。要求:
① ① 项目中有一个程序文件Pcode,将下列程序输入到其中并进行修改; ② ② 在修改程序时,不允许修改程序的总体框架和算法,不允许增加或
减少语句数目。
③
CLEAR
cResult=SPACE(0)
FOR x=1 TO 13
FOR y=x+1 TO 14
Z=2*y+x
IF z<16
dx=IIF(x<10,STR(x,1),CHR(55+x))
dy=IIF(y<10,STR(y,1),CHR(55+y))
dx=IIF(z<10,STR(z,1),CHR(55+z))
cResult=cResult + SPACE(1)+dx+dy+dz
ENDF
cResult= cResult+CHR(13)
ENDF
WAIT WINDOW cResult <![endif]>
江苏省高等学校非计算机专业学生
2004 年(秋)计算机基础知识和应用能力等级考试上机试卷
二级Visual FoxPro (试卷代号VFP06)
(本试卷完成时间 70分钟)
一、项目、数据库和表操作(12分)
江苏vfp二级考试上机
打开软盘根目录下的项目文件TEST,在该项目中已有一数据库SJK。
1.按如下要求修改SJK中成绩(CJ)表结构:
1)将成绩(cj)字段的标题设置为“成绩”;
2)设置成绩(cj)字段的有效性(验证)规则:大于等于0且小于等于100;
3)设置cj字段的有效性(验证)信息:成绩必须在0-100之间;
4)对cj字段设置字段注释:成绩小于60分为不合格;
5)创建一个普通索引xhcj,要求先按学号(xh)字段排序,学号相同时再按cj字段排序。 xh+str(cj)
2.为CJ表添加编辑说明:“学生成绩表”。
3.将软盘根目录中的表文件GZB.DBF添加为TEST项目中的自由表。
4.计算GZB表中所有纪录的应发工资(yfgz),应发工资的计算公式为:yfgz= jbgz+gwjt+ zhjt+zfbt+qt
浏览-替换字段-jbgz+gwjt+ zhjt+zfbt+qt
5.为CJ表设置更新触发器:kcdh的值为“06”或“09”的允许更新,否则不允许更新。 Kcdh=”06” or kcdh=”09”
6. SJK中KC表已存在主索引kcdh,索引表达式为kcdh;CJ表已存在普通索引cjkcdh,索引表达式为kcdh。以KC表为主表、CJ表为子表按kcdh建立永久关系,并设置KC表和CJ表之间的参照完整性:删除限制。
二、 设计查询(8分)
在TEST项目中已纪存在查询chaxun,且在SJK中包含一个名为XSST的视图。该视图中包含学号包含学号(xh)、姓名(xm)、班级编号(bjbh)、系代号(xdh)、党员(dy);在SJK的系名(XIM)表中含有系代号(xdh) 、系名称(ximing)字段。按如下要求修改查询:
基于XSST视图和XIM表查询每个系学生党员的人数以及男、女生党员各占的比例。输出字段包括:xdh、ximing、党员人数、 男党员比例、女党员比例,查询结果按系代号升序排列。
Sum(iif(dy,1,0)) as 党员人数
Sum(iif(dy and xb=”男”,1,0))/sum(iif(dy,1,0)) as 男党员比例
Sum(iif(dy and xb=”女”,1,0))/sum(iif(dy,1,0)) as 女党员比例
分组依据:xdh
排序依据:xdh
三、设计菜单(5分)
项目TEST已存在菜单MenuD, 利用菜单设计器按如下要求修改该菜单:
1. 1. 按图1所示为“成绩查询”菜单项创建子菜单;
2.
3. 2. 已知在A盘根目录下存在表文件CJ.DBF。为“按课程号查”菜单项设置SQL
命令,统计各门课的选修人数,要求当执行该菜单时在浏览窗口显示课程代号(kcdh)、选修人数;
Select cj.kcdh,count(*) as 选修人数 from cj
4. 3. 为“文件”下的恢复系统菜单项设置命令,当执行该菜单时,将VFP的主菜单
恢复为系统默认菜单。
Set sysmenu to default
四、设计表单(10分)
项目TEST中已经存在表单FormD,该表单的功能是:利用JS表中的教师工号数据进行“摇号”,单击“开始”按钮,则文本框中随机地显示教师工号,按回车键停止。按下列要求修
江苏vfp二级考试上机
改表单,修改完成后运行表单,其效果如图2所示。
1. 1. 将表单的标题改为“摇号”,将文本框改为不可获得焦点(即不可用);
2. 2. 向表单上添加一个矩形的形状控件(位置如图2所示),要求将其设置为三维效
果,并利用“布局”工具栏将其“置后”(否则会遮盖“开始”按钮等控件);
3. 3. 在列表框的下方添加一个“总清”命令按钮,设置其对象名为cmdClear,并设
计其Click事件代码,其功能是:将列表框中所有的列表项清除;
4. 4. 设计表单的Destroy事件代码,其功能是关闭所有打开的表或临时表。
五、程序改错(5分)
下列程序的功能是:将10万元 以内金额(整数)转换为大写形式。例如20005转换后为“贰万零伍元整”,2100转换后为“贰仟壹佰元整”。要求:
① ① 项目中有一个程序文件Pcode,将下列程序输入到其中并进行修改(注:
注释部分不输入);
② ② 在修改程序时,不允许修改程序的总体框架和算法,不允许增加或减少语
句数目。
nNum=$2100
cDigitStr=“零壹贰叁肆伍陆柒捌玖”
cUniStr=“元拾佰仟万”
nLen=LEN(ALLT(STR(nNum)))
cResult=”整”
FROM(for) i =1 TO nLen && 从右边数字开始依次读每一位 nDigit=INT(MOD(nNum,10))
IF nDigit<>0 &&数位不为0的情况
cResult=SUBSTR(cDigitStr,nDigit*2+1,2)+SUBSSTR(cUnitStr,i*2-1,2)+cResult
ELSE &&数位为0的情况
IF i=1 &&个位数为0
cResult=cResult+”元”—-“元”+cresult
ELSE
IF.NOT.LEFT(cResult,2)$”零元”
cResult=”零”+cResult
ENdIF
ENDIF
ENDIF
nNum=INT(nNum/10) &&去掉最后一位
ENDFOR
江苏vfp二级考试上机
WAIT WINDOW ALLT(cResult)
江苏省高等学校非计算机专业学生
2004 年(秋)计算机基础知识和应用能力等级考试上机试卷
二级Visual FoxPro (试卷代号VFP07)
(本试卷完成时间 70分钟)
一、项目、数据库和表操作(12分)
打开软盘根目录下的项目文件TEST,在该项目中已有一数据库SJK。
1. 1. 按如下要求修改SJK中课程(KC)表结构:
1) 1) 将课时数(kss) 字段的标题设置为“课时数”;
2) 2) 设置课时数(kss)字段的有效性(验证)规则:大于等于2且小于
等于8; kss>=2 and kss<=8
3) 3) 设置kss字段的有效性(验证)信息:课时数范围为2-8;
“课时数范围为2-8”
4) 4) 修改CZB表中所有记录的综合津贴(zhjt)字段的值,算法为:综
合津贴(zhjt)为基本工资(jbgz)的5%。
5) 替换字段——替换为jbgz*0.05
6) 5) 创建一个普通索引ksskcdh,要求先按kss字段排序,kss 相同时
再按kcdh字段排序。 Kss+kcdh
2. 2. 为KC表添加编辑说明:课程信息表。
3. 右击KC表—编辑说明
4. 3. 把软盘中的表文件GZB.DBF添加为TEST项目中的自由表。
5. 4. 修改GZB表中所有记录的综合津贴(zhjt)字段的值,算法为:综合津贴(zhjt)
为基本工资(jbgz)的5%。
6. 5. 为KC表设置删除触发器:不允许删除。删除触发器中直接输入——.f.
7. 6. SJK中KC表已存在主索引kcdh,索引表达式为kcdh;CJ表已存在普通索引
cjkcdh,索引表达式为kcdh。以KC表为主表、CJ表为子表、按kcdh建立永久关系,并设置KC表和CJ表之间的参照完整性:删除限制。
二、
三、
四、
五、
六、 一、设计查询(8分)
TEST项目中已经存在查询chaxun,在SJK的教师(JS)表中含有教师的出生日期(csrq)字段和教师所在的系代号(xdh)字段,系名(XIM)表中含有系代号(xdh)和系名称(ximing)字段。按如下要求修改查询:
基于XIM表和JS表查询每个系(xdh)教师的年龄结构。输出字段包括:xdh、ximing、总人数、四十岁以下人数、四十岁以上人数。查询结果按系代号升序排列。
Sum(iif(year(date)-year(csrq)<=40,1,0)) as 四十岁以下人数
Sum(iif(year(date)-year(csrq)>=40,1,0)) as 四十岁以上人数
分组依据xdh
排序依据xdh
注:年龄用表达式YEAR(DATE())-YEAR(js.csrq)计算。
七、 二、设计菜单(5分)
项目TEST中已存在菜单MenuG,利用菜单设计器按如下要求修改该菜单:
江苏vfp二级考试上机
1. 1. 按图1所示,为“教师任课管理”菜单栏编制子菜单;
2.
3. 2. 已知课程(KC)表存在索引kcdh,索引表达式为kcdh。为“任课管理”
菜单栏下的“课程代码查询”菜单项编制过程,该过程完成的功能是:首先打开KC表将kcdh设置为主索引,然后用SEEK命令查找kcdh为“08”的纪录;
Use kc order kcdh
4. Seek kcdh=”08”
5.
6. 3. 为“文件”菜单栏下的“返回”菜单项设置提示信息“返回系统菜单”
(在菜单运行过程中,当鼠标指针指向该菜单项时在屏幕左下角显示该提示信息)。文件—子菜单—编辑—选项—信息-返回系统菜单
八、 三、设计表单(10分)
项目TEST中已经存在表单FormG,该表单的功能是修改教师的职称信息。按下列要求修改该表单,其效果如图2所示。
1. 1.设置标签控件Label2的有关属性,要求在表单刚运行时,该控件不可见(隐
藏);
2. 2.修改表格控件的有关属性,要求表格无水平滚动条、无删除标志列,且第5
列(zcdh)数据可改写;
3. 3.添加一个列表框控件,要求:RowSourceType属性为“别名”,能显示zc表中
的zcdh和zc两个字段,并为该列表框控件设置InterActiveChange事件代码,该代码的功能是调用表单的zc_change方法;
4. 4.完善下拉列表框Combo1的InterActiveChange事件代码,要求在原代码的基
础上,在合适的位置增加4条语句以完成如下功能:利用标签控件Label2显示系名、表格中仅显示所进系的教师信息、刷新表单。
九、 四、程序改错(5分)
下列程序的功能是:求Fibonacci(斐波纳契)数列1,1,2,3,5,8,....(从第3项开始,每一项的值为前2项之和)的前20项,并分别计算奇数项和偶数项的和。要求:
① ① 项目中有一个程序文件Pcode,将下列程序输入到其中并进行修改
(注:注释部分不输入);
② ② 在修改程序时,不允许修改程序的总体框架和算法,不允许增加或
减少语句数目。
n =20
DIME fib[n]
Fib[20]=1―――fib=1
STORE 1 TO nSumEven && 奇数项和偶数项的和初值均设为1
CLEAR
?fib[1],fib[2]
FOR i=3 TO n
Fib[i]=fib[i-2]+fib[i-1]
IF MOD(i,2) =1
?fib[i]
nSumOdd=nSumOdd+fib[i]
OTHERWISE---else
??fib[i]
江苏vfp二级考试上机
nSumEnen=nSumEven+fib[i] ENDIF
ENDFOR
?nSumOdd,SumEven
正在阅读:
江苏vfp二级考试上机2004au05-24
2019-2020学年度初中七年级上册语文第一单元 亲近文学苏教版课后练习05-24
小汽车消费税纳税申报表03-20
2010年浙江省公务员面试真题及参考答案word版本04-02
全册总复习04-28
国外产学研合作模式比较研究及启示06-10
国内外药用辅料新进展07-02
中国成人血脂异常防治指南01-28
libcurl教程04-11
英语课题参考题目08-16
- 教学能力大赛决赛获奖-教学实施报告-(完整图文版)
- 互联网+数据中心行业分析报告
- 2017上海杨浦区高三一模数学试题及答案
- 招商部差旅接待管理制度(4-25)
- 学生游玩安全注意事项
- 学生信息管理系统(文档模板供参考)
- 叉车门架有限元分析及系统设计
- 2014帮助残疾人志愿者服务情况记录
- 叶绿体中色素的提取和分离实验
- 中国食物成分表2020年最新权威完整改进版
- 推动国土资源领域生态文明建设
- 给水管道冲洗和消毒记录
- 计算机软件专业自我评价
- 高中数学必修1-5知识点归纳
- 2018-2022年中国第五代移动通信技术(5G)产业深度分析及发展前景研究报告发展趋势(目录)
- 生产车间巡查制度
- 2018版中国光热发电行业深度研究报告目录
- (通用)2019年中考数学总复习 第一章 第四节 数的开方与二次根式课件
- 2017_2018学年高中语文第二单元第4课说数课件粤教版
- 上市新药Lumateperone(卢美哌隆)合成检索总结报告
- 江苏
- 上机
- 二级
- 考试
- 2004au
- vfp
- 2019-2020学年度初中七年级上册语文第一单元 亲近文学苏教版课后练习
- Charge dynamics of Ca_{2-x}Na_{x}CuO_{2}Cl_{2} as a correlated electron system with the ide
- 山东省临沂市平邑一中2015届高三第七次月考英语试题
- 最全李宫俊经典语录合集
- 同源建模工具easymodeller4.0 操作说明
- 第3课古代希腊罗马
- 对公授信后管理工作流程-刘老师
- 龙教版信息技术八年级上全部教案
- 小组logo设计说课稿
- 计算机组成原理课后答案
- 企业管理 新闻稿
- 牛津高中英语模块七unit1 project
- 关于阑尾炎手术的后遗症
- 摩洛哥建筑业工程承包市场投资前景预测报告
- 2011年社会治安综合治理宣传月活动实施方案
- 11-12-2概率统计答案(A卷)
- 今传媒&183;立新论&183;聚经典(两篇)——新媒体环境中群体传播的类型和动机
- 个人转让限售股相关个人所得税问题
- 小半径曲线无缝线路稳定性有限元分析
- 2、加油站事故案例