2008年秋VFP上机练习试卷1(注意保存、以后有用)(3)

2019-01-27 11:44

要求:第1条命令为c=THIS.VALUE;第2条命令的功能是将表格数据源属性设置为C;第3条命令按图2所示设置标签控件的标题属性,显示被选中表的表名和“表浏览”信息?

五、程序改错(5分)

下列程序的功能是:比较两个字符串的差异,并将差异的位置显示出来?例如:C1=“AbCDEFGHTP”,C2=“ABCDETG大P”,则比较以后显示位置差异:2,6,8,9?要求

1、将下列程序输入到项目中的程序文件PCODE中,并对其中的2条错误语句进行修改;

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

CLEAR

c1=“Visual FoxPro系统” c2=“visual foxpro 数据库” n=MAX(LEN(c1),LEN(c2)) FOR i=1 TO n

Str1=SUBSTR(c1,i,1) Str2=SUBSTR(c2,i,1) IF !str1==str2 IF CHR(‘Str1’)>127

?? i, i+1 ENDIF

?? i ENDIF ENDIF ENDFOR

江苏省高等学校非计算机专业学生

2008(秋)计算机基础知识和应用能力等级考试上机试卷

二级Visual FoxPro(试卷代号 VFP04)

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

打开T盘根目录中的项目文件JXGL,在该项目中已有一数据库JXSJ? 1、按下列要求在数据库JXSJ中新建一个表名为AB4的数据库表。 (1)按下表所示创建AB4表的表结构(包括字段的标题属性): 字段名 标题 类型 宽度 小数倍数 BH 编号 N 4 XM 姓名 C 20 BMRQ 报名日期 D KSRQ 考试日期 D (2)为表设置记录有效性规则:要求先报名、后考试; (3)为BH字段设置默认值:为当前记录号;

(4)创建一个普通索引abcd,要求按BMRQ字段排序,BMRQ相同时按BH字段排序。

2、为学生(XS)表设置插入触发器:班级编号(BJBH字段)的前二位必须为入学年份(来源于入学日期(RXRQ)字段。例如2008年入学的学生BJBH必须以“08”开头)。

3、为学生(XS)表增加一个是否转专业字段(字段名为ZZY,类型为逻辑型),并为其赋值:如果院系专业代码(YXZYDM字段)的前四位与学号(XH字段)中的第3~6位不一致,则ZZY字段的值设置为.T.。 4、已知课程(KC)表和课程安排(KCAP)表存在相同的课程代码(KCDM)字段,以KC表为主表,KCAP表为子表,按KCDM建立永久关系,并设置KC表和KCAP表之间的参照完整性:更新级联、删除限制。

二、设置查询(8分)

已知教师(JS)表存储了每名教师的基本信息,其中含院系专业代码(YXZYDM,C)、性别(XB,C)等字段,院系专业(YXZY)表为院系专业代

码与与院系专业名称对照表,含院系专业代码(YXZYDM,C)、院系名称(YXMC,C)等字段。按如下要求修改JXGL项目中的查询CHAXUN:

基于JS表和YXZY表统计各院系人数及男教师人数。要求:输出院系名称、人数和男教师人数(字段名依次分别为YXMC、RS和NANRS),且查询结果按男教师人数降序排列,输出去向为文本文件TEMP.TMP。

三、设计菜单(5分)

JXGL项目中已存在菜单MENU,已定义了“系统管理”菜单栏及其中的“恢复系统菜单”菜单项?按如下要求设计菜单,完成后的运行效果如图1所示?

图1

1、在“系统管理”菜单栏中插入VFP系统菜单“导出”,并为其设置跳过条件:当前工作区中无表打开时,该菜单跳过,即菜单不可用(提示:使用ALIAS()函数可以测试当前工作区中有无表打开);

2、创建“教师管理”菜单栏,其访问键为T,并创建其子菜单“录入”和“编辑”、“浏览”和“打印预览”,分组线如图1所示;

3、为“打印预览”菜单项设置命令,其功能是预览报表文件RTEST。

四、设计表单(10分)

表单F081B用于口令输入。按下列要求修改表单,修改后表单运行时如图2所示。

1、将左边命令按钮的标题设置为“确定”,且2个命令按钮的TOP属性均设置为82。

2、修改表单的有关属性,使其运行时自动居中,高度为120,宽度为

280。 图 2

3、在表单上添加一个标签控件和一个文本框控件,并按图2所示设置标签和文本框控件的有关属性(文本框的“占位符”属性为“*”)。

4、编写“确定”命令按钮的Click事件代码,其功能是使用IF...ELSE...ENDIF结构实现:若文本框的Value值等于“ABC”,则利用MESSAGEBOX()函数显示“OK!”,否则显示“口令不正确!”。

五、程序改错(5分)

下列程序的功能是:将二进制数字字符串转换成十进制数学字符串(转换结果小数点后保留3位)。其基本算法是:将每一位二进制数字乘以相应的权,并将乘积相加。二进制数字的权为:以小数点为界,整数部分向从右向左依次为2、2、2、??;小数部分从左向右依次为2、2、2、??要求:

①将下列程序输入到项目中的程序文件PCODE中,并对其中的2条错误语句进行修改;

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

CLEAR

cstr=\n=AT('.',cstr)

cstr=IIF(n=0, cstr+'.', cstr) c1=SUBSTR(cstr, 1, n-1) c2=SUBSTR(cstr, n+1) m1=0 m2=0

FOR i=1 TO LEN(c1)

m1=m1 + VAL(LEFT(RIGHT(c1, i), 1)) *2**(i-1) ENDFOR

FOR j=1 TO LEN(c2)

0

1

2

-1

-2

-3

m2=m2+VAL(SUBSTR(c2, j, 1)) *2 **(j) ENDFOR m1=m1+m2

?'二进制数' + cstr +'十进制表示为:' + VAL(m, 10, 3)


2008年秋VFP上机练习试卷1(注意保存、以后有用)(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:计算机应用基础复习思考题 - 图文

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: