2023年(春)计算机等级考试(二级vfp)机考练习题。
注:以上说明1所要求的操作在正式考试时执行。
练习题一(完成时间70分钟)
一、项目、数据库和表操作(12分)
打开t盘根目录中的项目文件jxgl,在该项目中已有一数据库jxsj。
1.在jxsj数据库中按如下**中所示的结构创建表,并设置相关属性。
(1) 设置ab表的记录级有效性规则,工作日期与出生日期之间至少相差16年;
(2) 对ygbh字段设置输入掩码:接受6个字节的字符,且只接受数字字符;
(3) 创建普通索引,索引名为abcd,要求按gzrq排序,gzrq相同时按csrq字段排序;
(4) 设置jbgz字段的有效性规则:大于等于600.00、小于等于10000.00。
2.在ab表中输入如下记录:
3.为kc表设置删除触发器:lx字段值为“专业核心课程”的记录不允许删除。
4.已知kc表已存在主索引kcdm,索引表达式为kcdm;jc表已存在普通索引kcdm,索引表达式为kcdm。以kc表为主表,jc表为子表按kcdm建立永久关系,并设置两表之间的参照完整性:更新限制。
二、设计查询(8分)
课程安排表(kcap)是用来存储各学期各班教学课程安排信息的表,其中含有学期编码(xqbm,c)、班级编号(bjbh,c)和课程**(kcdm,c)等字段;课程表(kc)中含有课程**(kcdm,c)、课程名称(kcmc,c)和课时数(kss,n)等字段。按如下要求修改jxgl项目中的查询chaxun:
基于kcap表和kc表统计各学期、各班开课门数、总课时数。要求输出字段为:班级编号、学期编码、开课门数、总课时数。
其中,输出的“学期编码”用简短格式表示,如“2004-2005学年第1学期”表示为“04-1”,“2005-2006学年第2学期”表示为“05-2"。要求查询结果按班级编号和学期编码排序。
三、设计菜单(5分)
jxgl项目中已存在菜单menu,其中已定义了“文件”菜单栏及其中的“退出菜单”项。按如下要求设计菜单,完成后的运行效果如图l所示。
1.在“文件”菜单栏下增加“新建…”菜单项;
2.在“文件”菜单栏下插入系统菜单“打开”;
3.在菜单项“打开”和“退出菜单”之间插入分组线;
4.为菜单项“退出菜单”设置快捷键ctrl+x图1
5.为菜单项“退出菜单”设置状态栏提示信息“恢复系统菜单”。
四、设计表单(10分)
jxgl项目中的表单formf用来进行汉字录入比赛,如图2所示。当点击“开始”时,在编辑框中录入汉字,当点击“结束”时,统计录入的汉字个数(不包含非汉字字符,且假设汉字均为gb2312汉字)及所用的时间。按下列要求修改表单:
1.设置编辑框的字体为楷体(或楷体-gb2312)、大小为12;
2.将文本框txtzs、txtsj设置为只读,字体颜色为红色;
3.在文本框txtsj右侧增加一个标签控件,标题为“秒”;
4.在表单中已经定义了日期时间型变量t1,完善表单的tjzs方法程序,在该方法**的两个空白行处分别增加一条命令,当点击“开始”时,将开始时间记录在变量t1中,当点击“结束”时,将所用的时间显示在文本框txtsj中(注:时间统计到秒);
5.编写命令按钮的click事件**,调用表单的新方法tjzs。
图2五、程序改错(5分)
一辆以固定速度行驶的汽车,司机在上午10点看到里程表上的读数是一个对称数95859(即这个数从左向右读和从右向左读是完全一样的),两小时后里程表上出现了一个新的对称数。下列程序的功能是根据以上信息求该车的速度和下一个新的对称数。要求:
① 将下列程序输入到项目中的程序文件pcode中,并对其中的2条错误语句进行修改;
② 在修改程序时,不允许修改程序的总体框架和算法,不允许增加或减少语句数目。
clearstore 95859 to a,b
do while .f.
a=a+1c=allt(str(a))
c1=subs(c,1,1)
c2=subs(c,2,1)
c4=subs(c,4,1)
c5=subs(c,5,1)
if c1=c5 and c2=c4
exitendif
enddo? ’车速为每小时:’,b-a
? ’新的对称数:’,a
练习题二(完成时间70分钟)
一、项目、数据库和表操作(12分)
打开t盘根目录中的项目文件jxgl,在该项目中已有一数据库jxsj。
1.在jxsj数据库中按如下**中所示的结构创建表,并设置相关属性。
1) 设置ab表的长表名为:大学信息表;
2) 设置xxbh字段的输入掩码和格式:第一位只能输入字母且转换为大写,其余各位为数字字符;
3) 设置xxmc字段显示类为“combobox”;
4) 创建候选索引,索引名为abcd,要求按jxrq排序,相同时按xxmc字段排序。
2.在ab表中输入如下记录:
3.设置xs表的插入触发器,要求只能插入学号前二位为“09”的记录。
4.已知kc表已存在主索引kcdm,索引表达式为kcdm,jc表已存在普通索引kcdm,索引表达式为kcdm,以kc表为主表,jc表为子表按kcdm建立永久关系,并设置两表之间的参照完整性:插入限制。
二、设计查询(8分)
课程安排表(kcap)是用来存储各学期各班课程安排信息的表,含有学期编码(xqbm,c)、班级编号(bjbh,c)和课程**(kcdm,c)等字段;课程表(kc)含有课程**(kcdm,c)和课时数(kss,n)等字段。按如下要求修改jxgl项目中的查询chaxun:
基于kcap表和kc表统计各班每学年的开课门数和总课时数。要求输出字段为:学年、班级编号、开课门数、总课时数,查询结果按学年排序。其中,“学年”为学期编码的前9个字符。
三、设计菜单(5分)
jxgl项目中已存在菜单menu,其中已定义了“文件”菜单栏及其中的“退出菜单”项。按如下要求设计菜单,完成后的运行效果如图l所示。
1.创建“运行”菜单栏,并创建其子菜单项“表单…”和“外部exe程序…”;
2.将菜单项“外部exe程序…”中的“x”字母设置为访问键“alt+x”; 图1
3.在菜单项“表单…”和“外部exe程序…”之间插入分组线;
4.为菜单项“表单…”设置命令:do form
四、设计表单(10分)
jxgl项目中已经存在表单forme,该表单用来进行汉字录入比赛,如图2所示。当点击“开始”时,在编辑框中录入汉字,当点击“结束”时,统计录入的汉字个数(不包括非汉字字符,且假设汉字均为gb符集中的汉字)。按下列要求修改表单:
1.设置有关属性,使得表单的标题为“汉字录入比赛”、表单运行时自动居中,且表单在运行时不能被其它窗口遮挡;
2.将编辑框的初始状态设置为只读;
3.添加文本框控件,名称属性值为txtzs,该文本框不能获得焦点,并设置初值为o;
4.完善命令按钮的click事件**,要求在两个空白处分别增加一条命令,当点击“开始”时,使编辑框获得焦点,点击“结束”时将统计的汉字个数在文本框txtzs中显示。
图2五、程序改错(5分)
下列程序的功能是求不超过1000的回文素数。所谓素数,就是仅能被l和它自身整除的整数:所谓回文素数,是指该素数从左向右和从右向左读其结果值相同。要求:
① 将下列程序输入到项目中的程序文件pcode中,并对其中的2条错误语句进行修改:
② 在修改程序时,不允许修改程序的总体框架和算法,不允许增加或减少语句数目。
clearfor i=0 t0 9
for j=0 to 9
for k=0 t0 9
s=i*100+j*10+k
t=k*100+j*10+i
t=iif(i=o and j=0,t/100,iif(i=0,t/10,t))
if s>10 and s<>t and flag(s)=1
? sendif
endfor
endfor
endfor
function flag
local m
for n=2 to m-l
if int(m/n)=m/n
return 0
endifendfor
return 1
endfunc
练习题三(完成时间70分钟)
一、项目、数据库和表操作(12分)
打开t盘根目录中的项目文件jxgl,在该项目中已有一数据库jxsj。
1.在jxsj数据库中按如下**中所示的结构创建表,并设置相关属性。
1) 设置ab表的表注释为:图书档案表;
2) 设置flh字段的格式:使得在该字段中输入数据时,自动删除其前导空格和结尾空格;
3) 设置ab表的记录有效性信息:flh字段值的前四位为入库日期(rkrq)字段中的年份,并依据此信息设置记录有效性规则;
2023年春vfp
一 项目,数据库和表操作 12分 1 在jxsj数据库中创建如下 中所示的表结构,表名为并设置相关属性。1 设置bxdh字段的注释 自动编号。2 设置je字段的输入掩码 采用会计格式 即例如 1,234,457 3 设置je字段的有效性规则 大于等于一万,且小于一千万。4 设置表的触发器 不能删除 ...
2023年 春 vfp
2010春江苏省二级vfp程序设计 第二部分visualfoxpro程序设计。一 选择题 用答题卡答题,答案依次填在21 30答题号内 21 关系的基本运算有并 差 交 选择 投影 联接 连接 等。这些关系运算中,运算对象必须为两个关系且关系不必有相同关系模式的是。a 并。b 交。c 投影。d 联接...
2023年春vfp上机素材
一 项目,数据库和表操作 12分 打开素材项目文件jxgl,在该项目中已有一数据库jxsj。1 在jxsj数据库中按如下 中所示的结构创建表,并按 中的要求设置相关属件。1 设置表的注释 蔬菜批发 表。2 设置rq字段的默认值 当前系统日期。3 设置dw字段的显示类 选项按钮组 提示 操作界面如下 ...