1、管理系统中计算机应用实践课上机考试操作手册Windows XP + Visual FoxPro6.0环境1、 在D盘根目录下建立一个考生文献夹,考生文献夹的名字为为准考证号+考生姓名。例如某考生的准考证号为,名字为王军,则该考生文献夹的名字为“王军”。考试中形成的所有文献都必须存放在该文献夹下。请考生牢记!2、 双击桌面上“访问教师机”或“作业布置与文献共享”或下载作业“快捷方式,把“数据环境”文献夹中的所有文献(不是文献夹),复制到考生自建的文献夹中。3、 答题完毕,请先退出VIP 系统,再将自建考生文献夹压缩后复制到桌面上的“上传作业”或“交作业”快捷方式中即可。凡是文献存放位置错误或文献
2、命名错误成绩一律记为零分。准考证号: 考生姓名: 考生成绩: 初始设立工作:1.启动Microsoft Visual FoxPro6.0,设立考生文献存放位置。 进入Windows XP系统后,在屏幕的左下角有一个“开始”按钮,用鼠标指向该按钮,按下鼠标左键,再用鼠标指向“程序“菜单项,在弹出的菜单中选择”Microsoft Visual FoxPro6.0”并进行点击打开。 启动了Microsoft Visual FoxPro6.0,出现如图I所示的窗口。了解各部分的名称。菜单栏命令窗口工具栏图I考生在命令窗口中输入命令,假如命令窗口被关闭,可按CTRL+F2打开此窗口。在命令窗口中输入“S
3、ET DEFAULT TO D:考生自建文献夹名”并按回车键。例如:SET DEFAULT TO D:王军,该条命令的作用是保证考生后面操作形成的文献存入考生自建的文献夹中。故考生必须保证输入对的。在命令窗口输入 “?sys(5)+sys(2023)”检查上述的设立是否对的,如图II所示,如不对的,请反复以上环节。若在考试半途因故退出系统,重启时,需反复以上动作,保证操作形成的文献存入考生自建的文献夹中。一、 项目、数据库和表操作(20分)(一) 打开项目文献JXGL,在该项目中已有一数据库JXSJ。1在JXSJ数据库中按如下表格中所示的结构创建AB1.DBF,并按表格中的规定设立相关属性。字
4、段名数据类型宽度字段标题TYKHC10国内统一刊号BZMCC16报纸名称MDJN2月订阅价DDJN3(小数1位)零售价BZM备注(1) 设立AB1表的表注释:国内报纸一览表;(2) 将TYKH字段的默认值设立为“CN00”;(3) 根据TYKH字段创建主索引,索引名为xyz;(4) 设立表的记录有效性规则:按月订阅报纸比天天购买报纸优惠(每月按30天计算)。2在AGB1表中输入如下的记录:TYKHBAMCMDJDDJBZCN11-0048参考消息180.7新华通讯社主管主办3.将KC表中LX字段值为“选修课程”的记录逻辑删除。4.JS表已存在主索引GH,索引表达式为GH,KCAP表已存在普通索
5、引GH,索引表达式为GH,以JS表为主表、KCAP表为子表按GH建立永久性关系,并设立两表之间的参照完整性:更新级联、删除级联、插入限制。(二)打开项目文献JXGL,在该项目中已有一数据库JXSL。1在JSXJ数据库中按如下表格中所示的结构创建AB2.DBF表,并按表格中的规定设立相关属性。字段名数据类型宽度字段标题BHC12编号MCC16名称XHC18型号DJN7(小数2位)单价GMRQD购买日期(1) 设立AB2表的表注释:教学设备登记情况表;(2) 设立GMRQ字段的默认值:当前系统日期;(3) 设立DJ字段的有效性规则:价格必须在2023.00以上;(4) 创建普通索引,索引名为xyz
6、,规定按购买日期的年月日排序,购买日期相同时再按单价字段降序排序。 2在AB2表中输入如下记录:BHMCXHDJGMRQJSJ09-0013计算机Compag nx63207800.002023-04-223.为JS表设立删除触发器:年龄小于60的记录不允许删除(年龄的计算方法为“当前系统日期的年份减去出生日期的年份”)。4JS表已存在主索引GH,索引的表达式为GH,KCAP表已存在普通索引GH,索引表达式为GH,以JS表为主表、KCAP表为子表按GH建立永久关系,并设立两表之间的参照完整性:更新级联、删除级联、插入级联。(三)打开项目文献JXGL,在该项目下已有一数据库JXSJ。1创建数据库
7、表。 (1)在JXSJ数据库中按下表所示创建AB3表的表结构(涉及字段的标题属性);字段名数据类型宽度字段标题GCBHC6工程编号KGRQD开工日期WGRQD竣工日期XMJLC12项目经理 (2)为AB3表设立记录有效性规则;规定先开工、后竣工; (3)为XMJL字段设立有效性规则;不能为空(即必须含非空格字符); (4)创建一个普通索引xyz,规定按开工日期的年月日排序,开工日期相同时按项目经理排序。2为教材表(JC)设立插入触发器:课程代码(KCDM)为“4001”时,必须使用作者(ZZ字段)含沈爱民的教材。3为学生表(XS)增长一个备注字段(字段名为BZ,类型为备注型),并为所有学生的备
8、注字段赋值;假如院系专业代码(YXZYDM字段)的前四位与学号(XH字段)第3-6位不一致,则BZ字段的值设立为“转专业学生”。4课程表(KC)和成绩表(CJ)存在相同的课程代码(KCDM)字段,以KC表为主表、CJ表为子表按KCDM建立永久关系,并设立KC有和CJ表之间的参照完整性:更新级联、删除级联、插入限制。二、设计查询(20分)。(一)学生表(XS)存储了每个学生的基本信息,具有学号(xh,C)、姓名(xm,C)等字段,成绩表(CJ)存储了每个学生各门课程的成绩信息,具有学号(xh,C)、课程代码(kcdm,C)和成绩表(cj,N)等字段。按如下规定修改JXGL项目中的查询CHAXUN
9、1: 若成绩大于或等于60分表达该门课程合格,基于XS表和CJ表中所有已登记的成绩,记录所有课程均合格的学生名单及其合格课程门数,规定输出字段为:xh、xm、合格门数,查询结果按合格门数升序排序。(提醒:“所有课程合格”可以等价理解为最低分数也大于等于60。)(二)课程安排表(KCAP)是用来存储各学期各班教学课程安排信息的表,其中具有学期编号(xqbm,C)、班级编号(bjbh,C)、课程代码(kcdm,C)和教师工号(gh,C)等字段,课程表(KC)中具有课程代码(kcdm,C)和课程名称(kcmc,C)等字段。按如下规定修改JXGL项目中的查询CHAXUN2; 基于KCAP表和KC表查询
10、同一学期、同一门课程有2个或2个以上教师任教的课程。规定输出字段为:xqbm、kcdm、kcmc、教师人数。(三)课程表(KC)中具有课程代码(kcdm,C)、课程名称(kcmc,C)和学分(xf,N)等字段,在成绩表(CJ)具有学生学号(xh,C)、成绩(cj,N)、课程代码(kcdm,C)等字段。按如下规定修改JXGL项目中的查询CHAXUN3: 若成绩不低于60分学生可以取得相应课程的学分,总学分大于或等于15分的学生可以毕业,则基于KC表和CJ表查询所有不能毕业的学生列表,规定查询输出字段为:学号、总学分,查询结果按总学分降序排序。三、设计菜单(10分)。(一)JXGL项目中已存在菜单
11、MENU1,其中已定义了 图1 “文献”菜单栏及其中的“退出菜单”项。按如下规定设计菜单,完毕后的运营效果如图1所示。1在“文献”菜单栏右侧创建“教学管理”菜单栏;2在“教学管理”菜单栏下创建子菜单“学生”、“课程”和“成绩”;3在菜单项“学生”、“课程”和“成绩”之间插入两条分组线;4为“学生”菜单项创建子菜单:“浏览”和“编辑”;5为“浏览”菜单项设立跳过条件:XS表打开时才可操作。(二)JXGL项目中已存在菜单MENU2,其中已定义了 图2“文献”菜单栏及其中的“退出菜单”项。按如下规定设计菜单,完毕后的运营效果如图2所示。1在“文献”菜单栏右侧创建“代码管理”菜单栏;2在“代码管理”菜
12、单栏下创建子菜单“民族”、“文化限度”和“政治面貌”;3为“代码管理”菜单项设立跳过条件:DMB表打开时才可操作;4为“民族”菜单项设立命令:SELECT * FROM dmb WHERE 1x=“民族”;5.为“民族”菜单项设立快捷键Ctrl+M。(三)JXGL项目中已存在菜单MENU3,其中已定义了“文献”菜单栏及其中的“退出菜单”项。按如下规定设计菜单,完毕后的运营效果如图3所示。 图31在“文献”菜单栏右侧创建“教学管理”菜单栏;2在“教学管理”菜单栏下创建子菜单“排课”和“课程”;3为“排课”菜单项设立跳过条件:KCAP表打开时菜单项才可操作(启用);4设立为“课程”菜单项的快捷键C
13、trl+K;5在菜单项“排课”和“课程”之间插入分组线。四、设计表单(30分)(一)JXGL项目中已经存在表单Formj,该表单用来设立表单中表格控件Grd1的相关属性,如图4所示。按如下规定修改表单: 图41设立表单的标题为“表格属性设立”;2设立表格Grd1中的数据为只读,但只能获得焦点,表格的RecordSourceType属性值为“0-表”;3在“数据源”标控件右侧添加一个组合框控件,并设立其Name属性为“Cbo2”、RowSourceType属性为“7-文献”、RowSource属性为当前目录下的所有.DBF文献;4设立复选框控件Check1的初始状态为选中;5为组合框Cbo1编写
14、Init事件代码,使它的初始值等于“3(缺省值)水平滚动条和垂直滚动条”(即初始选中下拉列表中的第4条列表项);6为组合框控件Cbo2编写InterActiveChange事件代码,使表单中Grd1控件的RecordSouce属性与Cbo2中选定的值一致。(二)JXGL项目中已经存在表单Formn,该表单用来显示银行取款时用户操的基本信息,如图5所示。按下列规定修改表单:1设立文本框Txtmm的相关属性,使文本框中输入的密码显示为“*”;2将文本框Txtje的输入掩码属性设立为“9,999.99”,使该文本框只能输入数字,且整数部分最多为4位,小数部分为2位,同时设立该文本框的初值为0;3在标
15、签“日期”右侧加一个文本框Txtrq,默认值为当前日期,并设立该文本框的有关属性,使之不触发用户的任何事件;4在文本框Txtmm的Valid事件代码中增长一条条件语句,使输入的密码必须为6位数字(该文本框的输入掩码已设立为“999999”);5在文本框Txtje的Valid 事件代码中增长一条命令,使输入的数字必须在0-5000之间,否则会出现其它的提醒框。 图5(三)JXGL项目中已经存在表单Formm,该表单用来对列表框中的数据进行排序,如图6所示,按下列规定修改表单:1表单运营时自动居中,无最大化、小化按钮;2在表单的LOAD的事件代码中已经定义了一个数组x,该数组中存放了10个30-5
16、0之间的随机整数,设立表单中列表框控件LIST1的相应属性,使列表框中显示数组x的内容;3设立选项按钮组控件OPT1的边框样式为无边框,背景透明;4表单已定义了新方法USERSORTA,该方法的功能是对数组x进行从小到大排序,请为表单定义另一新方法USERSORTD,采用与USERSORTA类似的的算法实现功能;对数组x进行从大到小排序;5在选项按钮组OPT1的Click事件代码的两个空白处分别增长一条命令来调动上述表单的新方法,使列表框中的数据按选项按钮OPT1指定的顺序排列。 图6五、编写程序(20分)已知数据表BOOKS的数据如下图所示,关系模式为:BOOKS(book1D,title,
17、ISBN,author,UitPrice,categpryCode),属性含义依次为;书号,书名,国际标准书号,作者,单价,类别代号。根据以上信息用SELECT-SQL语句完毕1-3题。1显示单价最高的前10本图书的书号、书名、作者、单价和类别代号。程序文献名为:PCODE1.PRG。2显示单价高于平均单价的图书的具体信息,程序文献名为:PCODE2.PRG。3对于那些比类别代号是F101的图书的所有单价都高的图书,显示其书号、书名和单价,程序文献名为:PCODE3.PRG。4找出1000以内的水仙花数(说明:水仙花的形式为a3+b3+c3=abc)。程序文献名为:PCODE4.PRG。5显示输出斐波那挈数列的前10项。(说明:斐波那挈数列为:1,1,2,3,5,8,13,21,34,55,从第三项起,每项都等于前两项的和。)程序文献名为:PCODE5.PRG。6计算1000以内所有不能被13整除也不能被17整除的正数和。程序文献名为:PCODE5.PRG。考试题量:第1至4大题只设1题进行考试,第5大题设2题进行考试,